首页 > 编程知识 正文

pointcut多个表达式,pointcut execution表达式

时间:2023-05-06 06:33:14 阅读:179847 作者:2378

Pointcut表达式类型

标准的AspectJ Aop的pointcut表达式类型丰富,而Spring Aop只支持其中的9种,并且Spring Aop自身扩展的一种共有11(11 )种表达式,每种表达式

execution:一般用于指定方法的执行,用的最多。within :可用于指定特定类型的所有方法执行或指定包。 this:Spring Aop基于动态代理,生成的bean也是代理对象。 this是这个代理对象。 如果此对象可以转换为指定类型,则对应的切入点是它,并且将启用Spring Aop。 target :如果代理的对象可以转换为指定类型,则对应的切入点就是它,并启用Spring Aop。 args :如果要执行的方法的参数是指定类型,则启用。 @target :如果代理的目标对象有指定的注释,则生效。 @args :如果要执行的方法参数类型具有指定的注释,则启用。 @within :和@target一样,从官方文档和网络上的表达来看,@within在目标对象的类或者父类中有指定的注释时是有效的,@target必须是目标对象根据笔者的测试,任何一个都只需要在目标类或父类中有指定的注释即可。 @annotation :如果要执行的方法具有指定的注释,则启用。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。