首页 > Web开发 > 详细

专门的aop框架-AspectJ

时间:2019-11-03 01:31:06      阅读:101      评论:0      收藏:0      [点我收藏+]

在前面的spring的aop的使用的基础上:切面类只能写一个方法,只能增强一个功能。就需要创建多个切面对象,配置多个<aop:advisor>

AspectJ的注解式开发步骤

定义一个普通的类,添加@Aspect注解,表明是一个切面类

定义要增强的方法,通过注解确定增强的类型

      @Before:前置通知

      @AfterReturning:后置通知

      @Around:环绕通知

      @AfterThrowing:异常通知

      @After:最终通知(相当于java中的finally)

通过aspectj的execution表达式确定要增强的目标方法

在spring配置文件注册aspectj的自动代理

技术分享图片

 

创建目标对象,创建切面对象

 技术分享图片

 技术分享图片

 

如果一个切面中execution表达式需要被重复使用多次

 技术分享图片

 

AspectJ的通知方法中获取目标方法的数据

目标方法的参数【每一种通知都可用】

      对aspectj的每一种通知类型都可以使用,在方法里面添加org.aspectj.lang.JoinPoint;参数

技术分享图片

 

目标方法的返回值【后置通知可用】

技术分享图片

 

环绕通知

技术分享图片

 

 

专门的aop框架-AspectJ

原文:https://www.cnblogs.com/Tunan-Ki/p/11784878.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!