重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要为大家展示了如何实现SpringAOP切点函数,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。
创新互联是一家专业提供灵寿企业网站建设,专注与网站设计、成都网站设计、H5页面制作、小程序制作等业务。10年已为灵寿众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。一:在函数入参中使用通配符
@AspectJ支持3种通配符
* :匹配任意字符,但它只能匹配上下文中的一个元素.
.. :匹配任意字符,可以匹配上下文中多个元素,但在表示类时,必须和*联合使用,而在表示入参时则单独使用
+ :表示按类型匹配指定类的所有类,必须跟在类名后面,如com.smart.Car+ ;继承或扩展指定类的所有类,同时还包括指定类本身.
@AspectJ函数按其是否支持通配符及支持的程度,可以分为以下3类.
1):支持所有的通配符:execution(),within()
2):仅支持“+”通配符:args(),this(),target()
3):不支持通配符:@args(),within(),target();@annotation()
此外,args(),this(),target(),@args(),@within(),@target()和@annotation()这7个函数除了可以指定类名外,也可以指定变量名,并将目标对象中的变量绑定到增强的方法中.
二:切点函数详解
[1]:@annotation()
@annotation()表示标注了某个注解的所有方法.
eg:
package com.springboot.test; import org.aspectj.lang.annotation.AfterReturning; import org.aspectj.lang.annotation.Aspect; import org.springframework.stereotype.Component; @Aspect @Component public class TestAspect { @AfterReturning("@annotation(com.springboot.anno.NeedTest)") public void needTestFun() { System.out.println("needTestFun() executed!"); } }
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。