首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

应用ASM4.0实现AOP的功能,监控每个方法的执行时间

2012-09-03 
使用ASM4.0实现AOP的功能,监控每个方法的执行时间接之前的博客http://zhwj184.iteye.com/admin/blogs/1630

使用ASM4.0实现AOP的功能,监控每个方法的执行时间

接之前的博客http://zhwj184.iteye.com/admin/blogs/1630756 关于asm使用的示例,这次使用asm来动态统计每个方法的执行时间,实现AOP功能。

AOP的更通用的做法是对原始类动态生成子类,调用子类的方法覆盖父类,来实现AOP的功能。著名的 Hibernate 和 Spring 框架,就是使用这种技术实现了 AOP 的“无损注入”。

 

下面我们就通过一个示例来对方法Foo.execute调用时动态注入方法执行前后的时间统计来统计方法的执行时间


import java.io.PrintStream;public class AsmAopExample$Foo{  public static void execute()  {    AsmAopExample.Monitor.start(); System.out.println("test changed method name");    try {      Thread.sleep(10L);    }    catch (InterruptedException e) {      e.printStackTrace();    }    AsmAopExample.Monitor.end();  }}


热点排行