详细的AOP简介参见百度百科吧,已经比较详细啦,不需要再介绍。http://baike.baidu.com/view/73626.htm。
就说一下现在一般实现AOP的几个产品:
1:AspectJ,目前最流行的静态AOP实现 ,利用class enhance原理,在编译的时候改变相关类的字节码。(支持动态修改方法和静态增加方法)。
2:AspectWerkz,动态AOP实现,拦截类载入的某一个阶段,使用自己的容器管理器,并调用jvm的字节码替换API,控制调用流程。在Aspectj5.0的时候和AspectJ合并了。
3:Spring AOP:(1)利用IOC和java的动态代理,实现AOP。(2)支持CGLIB,利用ASM字节码处理框架动态生成新的子类。
4:JBoss4.0:原理和AspectWerkz应该类似,都是通过类载入的时候做字节码处理。
项目开发中使用:AspectJ
1:配置简单,支持特性较多。
2:发展迅速,并且稳定。
相关的使用例子,Google即可。根据自己的项目特色选择吧。

浙公网安备 33010602011771号