惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Security Archives - TechRepublic
MongoDB | Blog
MongoDB | Blog
量子位
博客园 - 叶小钗
罗磊的独立博客
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Hacker News: Ask HN
Hacker News: Ask HN
MyScale Blog
MyScale Blog
GbyAI
GbyAI
Help Net Security
Help Net Security
Y
Y Combinator Blog
Engineering at Meta
Engineering at Meta
Hacker News - Newest:
Hacker News - Newest: "LLM"
Latest news
Latest news
H
Hacker News: Front Page
Blog — PlanetScale
Blog — PlanetScale
雷峰网
雷峰网
Microsoft Azure Blog
Microsoft Azure Blog
P
Proofpoint News Feed
C
CXSECURITY Database RSS Feed - CXSecurity.com
Scott Helme
Scott Helme
S
Schneier on Security
博客园 - 司徒正美
Hugging Face - Blog
Hugging Face - Blog
S
Security @ Cisco Blogs
Recorded Future
Recorded Future
S
Securelist
博客园 - Franky
Application and Cybersecurity Blog
Application and Cybersecurity Blog
A
About on SuperTechFans
N
News and Events Feed by Topic
AI
AI
T
Tenable Blog
N
News | PayPal Newsroom
C
Cybersecurity and Infrastructure Security Agency CISA
V
V2EX - 技术
T
Threat Research - Cisco Blogs
Cisco Talos Blog
Cisco Talos Blog
L
LINUX DO - 热门话题
N
Netflix TechBlog - Medium
S
SegmentFault 最新的问题
T
The Blog of Author Tim Ferriss
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Google Online Security Blog
Google Online Security Blog
S
Security Affairs
Webroot Blog
Webroot Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
博客园 - 三生石上(FineUI控件)
C
Comments on: Blog
G
GRAHAM CLULEY

博客园 - 走到天亮

设计模式之“适配器模式” 设计模式之“门面模式” 设计模式之“抽象工厂模式” 设计模式之“单例模式” 设计模式之“代理模式” 设计模式之“策略模式” 《C# to IL》第三章 选择和循环 《C# to IL》第二章 IL基础 《C# to IL》第一章 IL入门 淘宝下单高并发解决方案(转载) java linux 配置环境 Spring Aop之(二)--Aop 切面声明和通知 Spring aop Spring BeanNameAutoProxyCreator 与 ProxyFactoryBean CentOS的IP配置专题 Spring Bean属性绑定Bean返回值 【阿里的感悟】质量该如何做? .(转载) Ubuntu开机自动启动script(2) Ubuntu开机自动启动Script
Spring RegexpMethodPointcutAdvisor和NameMatchMethodPointcutAdvisor
走到天亮 · 2012-08-14 · via 博客园 - 走到天亮

Spring AOP中有两个PointcutAdvisor

      ——RegexpMethodPointcutAdvisor和 NameMatchMethodPointcutAdvisor,它们都在org.springframework.aop.support包中,

都可以过滤要拦截的方法,配置方法也大致相同,其中一个最主要的区别:

RegexpMethodPointcutAdvisor:需要加上完整的类名和方法名,例如:com.xw.methodname或com.*.methodname或.*methodname。

NameMatchMethodPointcutAdvisor:只需要方法名,不用加类名:*methodname。

1.RegexpMethodPointcutAdvisor

    <!--  将拦截器包装成Advisor-->
       <bean id="runAdvisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
      <!--  advice属性确定处理bean-->
      <property name="advice">
       <bean class="spring.aop.LoggerAdvice"/>
      </property>
      <property name="patterns">
       <list>
        <!--正则表达式-->
        <value>.*tst</value>
       </list>
      </property>
     </bean>
     
    <bean id="proxyBean_regexpMethod"  class="org.springframework.aop.framework.ProxyFactoryBean">
    <property name="proxyInterfaces" value="spring.aop.ITest">
    </property>
    <property name="interceptorNames">
    <list>
    <value>runAdvisor</value>
    </list>
    </property>
    <property name="target" ref="testproxyfactorybean"></property>
    </bean>

 2.NameMatchMethodPointcutAdvisor

    <!--  将拦截器包装成Advisor,该对象还确定代理对怎样的方法增加处理-->
       <bean id="runAdvisor_Name" class="org.springframework.aop.support.NameMatchMethodPointcutAdvisor">
      <!--  advice属性确定处理bean-->
      <property name="advice">
       <!-- 此处的处理bean定义采用嵌套bean,也可引用容器的另一个bean-->
       <bean class="spring.aop.LoggerAdvice"/>
      </property>
      <!--  patterns确定正则表达式模式-->
      <property name="mappedNames">
       <list>
        <!--  确定正则表达式列表-->
        <value>tst</value>
       </list>
      </property>
     </bean>