spring相关

文章介绍了如何在Spring框架中启用AOP功能,包括在配置文件中使用<aop:aspectj-autoproxy/>标签和在Java代码中使用@EnableAspectJAutoProxy注解。详细阐述了如何定义切点和切面,如<aop:aspect>,以及如何指定切面执行顺序(order属性)。此外,还展示了在切点前后执行方法的例子,包括after-returning顾问的使用。

AOP

要使用aop相关功能,
如果在配置文件中开启,则加入配置 <aop:aspectj-autoproxy/>
如果在java类型中开启,在在启动类上加入 @EnableAspectJAutoProxy

配置文件中进行配置

<aop:config>

		在切点方法的前后执行,执行的testA.handle(),
        <aop:aspect id="aspectA" ref=testA" order="3">
            <aop:around  pointcut="@annotation(teAnnotation)" method="handle"/>
        </aop:aspect>

		在切点的方法的后面执行
		returning="returnParam":这个表示切点方法的返回值是这returnParam,也就是testB.handle(),的入参中有一个参数是returnParam
        <aop:aspect id="aspectB" ref="testB" order="1">
            <aop:pointcut id="testPointcut" expression="@annotation(MyAnnotation)"/>
            <aop:after-returning returning="returnParam" method="handle" pointcut-ref="uiRenderingPointcut"/>
        </aop:aspect>
    </aop:config>

注意:order属性表示该切面执行的顺序,数字越小越优先执行;例如,有多个切面的且切点都是同一个方法(都是在A类的a方法前或者后执行),则order属性就可以指定,多个切面方法执行的先后顺序,如果一个切点只有一个切面,那该属性就没用
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值