2008-05-12
spring aop execution pointcut
Spring AOP 用户可能会经常使用 execution
pointcut designator。执行表达式的格式如下:
execution(modifiers-pattern? ret-type-pattern declaring-type-pattern? name-pattern(param-pattern) throws-pattern?)
除了返回类型模式(上面代码片断中的ret-type-pattern),名字模式和参数模式以外,所有的部分都是可选的。
返回类型模式决定了方法的返回类型必须依次匹配一个连接点。
你会使用的最频繁的返回类型模式是 *
,它代表了匹配任意的返回类型。
一个全称限定的类型名将只会匹配返回给定类型的方法。名字模式匹配的是方法名。
你可以使用 *
通配符作为所有或者部分命名模式。
参数模式稍微有点复杂:()
匹配了一个不接受任何参数的方法,
而 (..)
匹配了一个接受任意数量参数的方法(零或者更多)。
模式 (*)
匹配了一个接受一个任何类型的参数的方法。
模式 (*,String)
匹配了一个接受两个参数的方法,第一个可以是任意类型,第二个则必须是String类型。
下面给出一些常见切入点表达式的例子。
-
任意公共方法的执行:
execution(public * *(..))
-
任何一个以“set”开始的方法的执行:
execution(* set*(..))
-
AccountService接口的任意方法的执行:execution(* com.xyz.service.AccountService.*(..))
-
定义在service包里的任意方法的执行:
execution(* com.xyz.service.*.*(..))
-
定义在service包或者子包里的任意方法的执行:
execution(* com.xyz.service..*.*(..))
发表评论
- 浏览: 9193 次

- 详细资料
搜索本博客
我的相册
Screenshot-2.png
共 3 张
共 3 张
最近加入圈子
最新评论
-
javascript ===
那我也很无知,受教了
-- by lengyubing -
基于struts2+spring+hiber ...
最近正在学习这方面的知识,能否提供一份源代码谢谢哦!哈 etao528@163. ...
-- by etao528 -
基于struts2+spring+hiber ...
有源码吗?谢谢!正在学习中
-- by etao528 -
基于struts2+spring+hiber ...
初学者,照猫画虎,一直没有成功
-- by xianhui -
30个开源的AS3工程
很喜欢Flex...英文不是很好..密密麻麻的....作者这么辛苦..顶下...
-- by lf1815






评论排行榜