您的位置:首页 > 编程语言 > Java开发

spring aop的实现机制

2014-04-27 17:29 239 查看
概念

AOP(Aspect Oriented Programming,面向切面编程),spring的强大辅助工具之一就是AOP了,能够动态的对即将执行的代码进行拦截处理,比如url过滤也就是权限相关验证,日志处理,缓存机制等等。

实现机制

动态代理

动态字节码生成(cglib)

字节码转换

自定义类加载器

Spring aop的实现

Spring AOP 默认是通过动态代理实现的,当然一般也会搭配cglib一起,当动态代理没用的时候,也就是代理类没有对应的接口时,会采用cglib的实现,而且spring aop有一定的缺点:

1.只能对方法进行切入,不能对接口,字段,静态代码块进行切入。

2.调用同一个类中的其他方法也不会被切入。

3.性能不是很好,使用自定义类加载器,性能要优于动态代理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: