(Spring)Spring基于AspectJ的AOP开发(二)

切入点的表达式

      **   在配置切入点的时候,需要定义表达式,重点的格式:execution(public  *..*(..)),具体展开如下:

            *   切入点表达式的格式如下

                 >  execution([修饰符]  返回值类型  包名.类名.方法名(参数))

            *   修饰符可以省略不写,不是必须要出现的

            *   返回值类型是不能省略不写的,跟根据你的方法来编写返回值。可以使用 * 代替

            *   包名例如: com.jadan.demo1.BookDaoImpl

                >  首先 com 是不能省略不写的,但是可以使用 * 代替

                >  中间的包名可以使用 * 代替

                >  如果想省略中间的包名可以使用   ..

            *   类名也可以使用  *  号代替,也有类似的写法:*DaoImpl

            *   方法也可以使用  *  号代替

            *   参数如果是一个参数可以使用  *  号代替,如果想代表任意参数使用  ..


AOP的通知类型

     1、前置通知

          *   在目标类的方法执行之前执行

          *   配置文件信息:<aop:after  method="before"  pointcut="execution(public  * *..*.*Impl.*())" />

          *   应用:可以对方法的参数来做校验

     2、最终通知

          *   在目标类的方法执行之后执行,如果程序出现了异常,最终通知也会执行

          *   在配置文件中编写具体的配置:<aop:after  method=""  pointcut="" />

          *   应用:例如释放资源

     3、后置通知

          *   方法正常执行后的通知

          *   在配置文件中编写具体的配置:<aop:after-returning  method=""  pointcut="" />

          *   应用:可以修改方法的返回值

     4、异常抛出通知

          *   在抛出异常后通知

          *   在配置文件中编写具体的配置:<aop:after-throwing  method=""  pointcut="" />

          *   应用:包装异常的信息

     5、环绕通知 

          *   方法的执行前和后执行

          *   在配置文件中编写具体的配置:<aop:around  method=""  pointcut="" />

          *   需要注意的是:目标的方法默认不不执行,需要使用 ProceedingJoinPoint 让目标对象的方法执行


下一篇:Spring框架的AOP技术(注解方式)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值