目录:事务管理,AOP基础,AOP进阶,AOP案例
一.AOP入门:
运行的不是原先的对象 而是AOP所生成的代理对象
二.AOP进阶:
* 通知类型
* 通知顺序
* 切入点表达式
* 连接点
1.通知类型:
1.@Around:环绕通知,在目标方法前后都被执行
2.@Before:前置通知,在目标方法前被执行
3.@After:后置通知,在目标方法后被执行,无论是否有异常都会执行
4.@AfterReturning:返回后通知
5.@AfterThrowing::异常后通知
2.@PointCut:该注解的作用是将公共的切点表达式抽取出来,需要用到时引用该切入点表达式即可
3.通知顺序:
用@Order(数字)加在切面类上来控制顺序,数字越小越先执行
4.切入点表达式:
可以根据业务需求,用且(&&),或(||),非(!)来组合比较复杂的切入点表达式
切入点表达式-@annotetion
4.连接点
*在Spring中用JoinPoint抽象了连接点,用它可以获得方法执行时的相关信息,如目标类名,方法名,方法参数等
--》对于@Around通知,获取连接点信息只能使用 ProceedingJoinPoint
--》对于其他四种通知,获取连接点信息只能使用JoinPoint,它是ProceedingJoinPoint的父类型