Springboot之怎么统计代码执行耗时时间
这篇文章主要介绍“Springboot之怎么统计代码执行耗时时间”,在日常操作中,相信很多人在Springboot之怎么统计代码执行耗时时间问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Springboot之怎么统计代码执行耗时时间”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
开始 System.currentTimeMillis() 减去结束 System.currentTimeMillis() 等于 耗时
其实我个人感觉OK的,就这样就蛮好的,很多项目都是这样用的。
简简单单的挺好。
正文
①StopWatch
第一种玩法,spring util 里面提供的 StopWatch
示例代码:
StopWatchstopWatch=newStopWatch();stopWatch.start();//doInsert();//执行业务等stopWatch.stop();System.out.println(stopWatch.getTotalTimeMillis());
效果:
②System.nanoTime()
第二种玩法 System.nanoTime()
先不着急看怎么用, 我们看完第一种StopWatch 的时候, 有没有小伙伴的思维散发够的,想着这spring 封装的统计耗时,自己是怎么实现的?
题外话:
一定要养成这种散发的思维, 很多兄弟朋友都跟我反馈过一些话题,就是说,项目里面没啥东西可学。
其实,这个很正常, 工作过程不是教导过程,你要自己有纵向 挖掘 、横向 散发的 学习思维。
直接点StopWatch 的源码看一眼, 哦,原理是用的System.nanoTime() :
System.nanoTime() 代码使用示例 :
longstartTime=System.nanoTime();doInsert();//执行业务longendTime=System.nanoTime();System.out.println((endTime-startTime));
效果 :
③ new Date ()
第三种玩法 ,平时偶尔也看到别人这么写 new Date
示例代码:
DatestartDate=newDate();//doInsert();//执行业务等DateendDate=newDate();System.out.println((endDate.getTime()-startDate.getTime()));
效果:
④System.currentTimeMillis()
省略
ps:StopWatch 其实不仅仅是封了一下耗时统计,这样也太。。了 。
里面其实封装了蛮多其他关于时间统计的函数(感兴趣的可以单独去研究研究,特别是参考作者的封装思路 ):
void start
(“任务名称”):开始一个任务名称的计时void stop()
:停止当前任务的计时boolean isRunning()
:是否正在计时某任务long getTotalTimeMillis()
:所有任务的总体执行时间(毫秒单位)double getTotalTimeSeconds()
:所有任务的总时间(以秒为单位)long getLastTaskTimeMillis()
:上一个任务的耗时(毫秒单位)int getTaskCount()
:定时任务的数量String prettyPrint()
:优美地打印所有任务的详细耗时情况StopWatch.TaskInfo[] getTaskInfo()
:包含任务名称和任务耗时的实体类数组
到此,关于“Springboot之怎么统计代码执行耗时时间”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注主机评测网网站,小编会继续努力为大家带来更多实用的文章!
下一篇:SpringBoot?security默认拦截静态资源问题怎么解决