如何优雅的在java中统计代码块耗时
如何优雅的在java中统计代码块耗时 在我们的实际开发中,多多少少会遇到统计一段代码片段的耗时的情况,我们一般的写法如下 long start = System.currentTimeMillis(); try { // .... 具体的代码段 } finally { System.out.println("cost: " + (System.currentTimeMillis() - start)); } 上面的写法没有什么毛病,但是看起来就不太美观了,那么有没有什么更优雅的写法呢? <!-- more --> 1. 代理方式 了解 Spring AOP 的同学可能立马会想到一个解决方法,如果想要统计某个方法耗时,使用切面可以无侵入的实现,如 // 定义切点,拦截所有满足条件的方法 @Pointcut("execution(public * com.git.hui.boot.aop.demo.*.*(*))") public void point() { } @Around("point()") public Object doAround(ProceedingJoinPoint joinPoint) throws Throwable { long start = System.currentTimeMillis(); try{ return joinPoint.proceed(