Spring aop expression 星号(*)

本文详细解析了AOP配置中execution表达式的用法,包括如何指定方法的返回值类型、包路径、方法名及参数等条件,以及如何灵活运用通配符和参数模式来匹配多种情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<aop:config>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> &lt;aop:pointcut id="allMethod" <span style="color:#a15fd">expression="execution(* *..BookManager.save<span style="color:#a15fd">(..))"</span>/</span>&gt;<br><wbr> &lt;/aop:config&gt;<br><br><span style="color:#ed1c24"><span>execution(modifiers-pattern?<wbr>ret-type-pattern<wbr>declaring-type-pattern?<wbr>name-pattern(param-pattern)<wbr></wbr></wbr></wbr></wbr></span><span>throws</span><span>-pattern?)</span></span><br> 其中带问号的modifiers-pattern?(public/protected) 和 declaring-type-pattern? throws-pattern? 可以不填<br><br> execution(* *..BookManager.save(..))的解读:<br> 第一颗* 代表ret-type-pattern 返回值可任意,<br> *..BookManager 代表任意Pacakge里的BookManager类。<br> 如果写成com.xyz.service.* 则代表com.xyz.service下的任意类<br> 如果写成com.xyz.service.*.* 则代表com.xyz.service下的任意类的任意方法<br> com.xyz.service..* com.xyz.service则代表com.xyz.service及其子package下的任意类<br> save代表save方法,也可以写save* 代表saveBook()等方法<br> (..) 匹配0个参数或者多个参数的,任意类型<br> (x,..) 第一个参数的类型必须是X<br> (x,,,s,..) 匹配至少4个参数,第一个参数必须是x类型,第二个和第三个参数可以任意,第四个必须是s类型。<br></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值