繁体   English   中英

如何在Spring控制器的每个方法之前使用AOP执行一些代码并拥有Method对象

[英]How to execute some code with AOP before each method of a Spring controller and have the Method object

给定Spring控制器中的方法,我想执行“之前”处理程序。 我尝试了一些AspectJ代码来做到这一点,但无法解决。 我想要的是获取目标Method对象,以便我可以处理其Annotations。 可能吗? 怎么样?

编写一个实现“ MethodBeforeAdvice”接口的类,并覆盖该类中的before()方法,您可以在其中实现所需的逻辑。

并且还将您的自定义类指定为Spring XML文件中org.springframework.aop.support.RegexpMethodPointcutAdvisor的属性。

 ex: 
    <bean id="methodAuthzAdvice" class="com.src.customClassMethodBeforeAdvice"/>
    <bean id="methodAuthzAdvisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
         <ref local="methodAuthzAdvice"/>
            <property name="advice">
                <ref local="methodAuthzAdvice"/>
            </property>     
                     <property name="pattern">
                <value>.*</value>
            </property>
        </bean>

使用methodAuthzAdvice id作为xml文件中处理程序类的拦截器属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM