Spring Aop ---aspect实现

Spring Aop(aspect)的详细使用

Pointcut使用详细语法:

任意公共方法的执行:execution(public * *(…))

任何一个以“set”开始的方法的执行:execution(* set*(…))

AccountService 接口的任意方法的执行:execution(* com.xyz.service.AccountService.*(…))

定义在service包里的任意方法的执行: execution( com.xyz.service..(…))*

定义在service包和所有子包里的任意类的任意方法的执行:execution( com.xyz.service….(…))*

第一个表示匹配任意的方法返回值, …(两个点)表示零个或多个,第一个…表示service包及其子包,第二个表示所有类, 第三个*表示所有方法,第二个…表示方法的任意参数个数

定义在pointcutexp包和所有子包里的JoinPointObjP2类的任意方法的执行:execution(* com.test.spring.aop.pointcutexp…JoinPointObjP2.*(…))")

pointcutexp包里的任意类: within(com.test.spring.aop.pointcutexp.*)

pointcutexp包和所有子包里的任意类:within(com.test.spring.aop.pointcutexp…*)

实现了Intf接口的所有类,如果Intf不是接口,限定Intf单个类:this(com.test.spring.aop.pointcutexp.Intf)

作者:Saxon_323e
链接:https://www.jianshu.com/p/830e799e099b
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

你可能感兴趣的:(#,Spring)