@Pointcut("within() ..) 表达式匹配整个类的所用方法,或者整包下的所用类的所有方法。
@excution 切面条件,Advice执行时机,精讲
匹配包/类型
匹配包/類型
within(包名) -> 攔截指定包[1]裡所有類的方法
[1]包也可指定為子包或者一個類
匹配包/类型
匹配包/类型:
2222222222222222222222222
1111111111111
//匹配包/类型
//匹配ProductService类里的所有方法
@Pointcut("within(com.imooc.service.ProductService)")
public void matchType(){}
@Before("matchType")
public void before(){}
//匹配com.imooc包及子包下所有类的方法
@Pointcut("within(com.imooc..*)")
public void matchPackage(){}
匹配包/类型
within表达式
匹配包示例
匹配包示例
匹配包/类型 within
@Pointcut("within()")——匹配包 / 类型
within的使用
@Pointcut("within()")
匹配包/类型
within()
//匹配包/类型
//匹配ProductService类里的所有方法
@Pointcut("within(com.imooc.service.ProductService)")
public void matchType(){}
@Before("matchType")
public void before(){}
//匹配com.imooc包及子包下所有类的方法
@Pointcut("within(com.imooc..*)")
public void matchPackage(){}
Within表达式
within表达式用法:匹配包/类型
pointcut 扫描包以及子包下的所有方法的两种办法:
第一种: @Pointcut("within(com.xxx..*)")
第二种: @Pointcut("execution(public * com.xxx..*.*(..))")
*匹配子包
within演示
within表达式
匹配包/类型
匹配包/类型