首页 > 编程语言 >Java-统计程序运行的时长(计算两个时间相差的秒数)

Java-统计程序运行的时长(计算两个时间相差的秒数)

时间:2023-09-27 16:38:01浏览次数:46  
标签:00 Java String 程序运行 SimpleDateFormat startTime new 秒数 endTime

最近在做Hbase的查询性能验证,需要统计查询的执行时长,所以需要统计开始时间和结束时间的时间差。

下面是使用SimpleDateFormat和Date计算时间差(相差秒数)的程序示例,仅供参考。

package com.sgcc;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class MyTest {

    public static String dateDiff(String startTime, String endTime) {
        SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        long diff;
        try {
            diff = sd.parse(endTime).getTime() - sd.parse(startTime).getTime();
        } catch (ParseException e) {
            throw new RuntimeException(e);
        }
        long diffSeconds = diff / 1000;
        return  diffSeconds + "秒";
    }

    public static void main(String[] args) {

        SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String startTime = sdf.format(new Date());
        try {
            Thread.sleep(2000);
        } catch (InterruptedException e) {
            throw new RuntimeException(e);
        }
        String endTime = sdf.format(new Date());
        System.out.println(dateDiff(startTime,endTime));

    // String startTime = "2023-09-27 00:00:00" ;
    // String endTime = "2023-09-27 00:00:10" ;
    // String costTime = dateDiff(startTime,endTime);
    // System.out.println(costTime );
    }
}

 

标签:00,Java,String,程序运行,SimpleDateFormat,startTime,new,秒数,endTime
From: https://www.cnblogs.com/yeyuzhuanjia/p/17733003.html

相关文章

  • Java函数AI生成器:秒级体验,高质量生成
    职业使然,之前我自己试用并给小伙伴们推荐过不少大模型相关的产品,这些产品看起来牛逼plus,但是它们要么对国内有限制,要么是申请制/邀请制,自己没个资想搞个账号去体验一下都难如登天,忍不住吐槽某大厂虽然早早的对外宣布面向全民开发,但实际上提交了手机号码还在等待排队上车,掐指一算,有......
  • java实现文件上传与下载
    一、对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,Servlet获取上传文件的输入流然后再解析里面的请求参数是比较麻烦。 JSP代码,POST请求,表单必须设置为enctype="multipart/form-data"<spanstyle="font-size:14px;"><formaction="upload3"method="po......
  • Java实现四则运算生成器
    这个作业属于哪个课程计科二班这个作业要求在哪里结对项目这个作业的目标熟悉结对编程项目成员龙新超3121004921github链接:龙新超github艾孜海尔江3121004900github链接:海尔江githubPSP表格PSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实......
  • JavaScript下载base64位文件
    1/**2*下载文件3**/4functiondownloadExcel(base64Data){5varmyBlob=this.base64toBlob(base64Data);6varmyUrl=URL.createObjectURL(myBlob);7varlink=document.createElement("a");8......
  • Java内值传递和引用传递记录
    不管哪个语言都有值传递,引用传递两种方式,在C语言里面引用传递用指针搞定。在Java里面没有指针,所以Java就规定(之前的设计)了某些类型是值传递,某些是引用传递,我这里不想一个一个写下来了,浪费时间,现在查AI那么方便的事。写程序的人,必须要知道两个概念。因为知道才是现在最重要的,怎么......
  • Java泛型简明解析:易懂但全面的介绍
    引言Java泛型的背景和作用Java泛型是Java编程语言中的一个特性,引入泛型的目的是为了增强代码的类型安全性和重用性。在没有泛型之前,Java中的集合类(如ArrayList、HashMap等)只能存储Object类型的对象,这使得在使用集合时需要进行强制类型转换,容易出现类型错误。泛型的背景:在Java5版本......
  • 使用CSS、HTML、JavaScript实现一个简单的身份验证页
      这是我在博客园的第一篇博客,也是我人生中的第一篇博客。希望它能够记录我的成长,帮助更多的人。  最近在写我们社团的社团网站,有一个页面不太希望普通访客能访问到,所以想做一个“统一身份验证验证”,但是又苦于社团网站搭建是纯静态站,没法做数据库,只能妥协,将账号密码字符串......
  • Java中线程间有哪些通信方式?
    1、volatile和synchronized关键字关键字volatile可以用来修饰字段(成员变量),就是告知程序任何对改变量的访问均需要从共享内存中获取,而对它的改变必须同步刷新回共享内存,它能保证所有线程对变量访问的可见性。关键字synchronized可以修饰方法或者以同步块的形式来进行使用,它主要确保......
  • Java中CornExpression说明
    关于cronExpression表达式有至少6个(也可能是7个)由空格分隔的时间元素,从左至右,这些元素约定义如下:1、秒(0~59)2、分(0~59)3、小时(0~23)4、月份中的日期(1-31)5、月份(1-12或JAN-DEC)6、星期中的日期(1-7或SUN-SAT)7、年份(1970-2099)eg:0010,14,16**?每天10点、14点、16点0015,30,45*......
  • java8基础镜像制作:基于官方镜像改编
    上次配完trivy之后,扫描java项目发现很多漏洞,具体分析了下,大部分居然是制作docker的基础镜像java:8造成的于是更新java8镜像就提上日程了,上dockerhub上看了下,最新版的java8镜像还是6年前。。无奈只能自己制作了,首先看一下当时java镜像的dockerfile ......