9、AOP的概念和原理
什么是AOP
AOP是面向切面编程,一般可以帮助我们在不修改现有代码的情况下,对程序的功能进行拓展,往往用于实现日志处理,权限控制,性能检测,事务控制等
AOP实现原理
实现原理就是动态代理,在有接口的情况下,使用JDK动态代理,没有接口的情况下,使用cglib动态代理
AOP的一些术语
1.连接点 Join Point
可以被增强的方法
2.切入点 Pointcut
实际被增强的方法
3.通知 Advice
实际增强的功能
4.目标对象Target
被代理的对象
5.切面Aspect
功能相关的advice方法放在一起声明成的一个Java类
6.织入 Weaving
创建代理对象并实现功能增强的声明并运行的过程
AOP五个注解
1.@Before:前置通知
切点方法执行之前先执行的功能
2.@After:后置通知
方法执行之后要增强的功能
3.@AfterReturning:返回通知
切点方法return之后增强的功能,切点方法如果出现异常则不执行
4.@AfterThrowing:异常通知
切点方法出现异常就执行,不出现异常就不执行
5.@Around:环绕通知
切点方法之前和之后都能进行功能的增强,可以控制切点方法的执行 环绕通知的返回值必须是Object,在通知中必须要将切点方法继续向上返回
评论( 0 )