微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用ProxyFactoryBean和Java配置在Spring bean中整合MethodInterceptor

如何解决使用ProxyFactoryBean和Java配置在Spring bean中整合MethodInterceptor

要求是拦截供应商类的bean的所有方法调用。我想这样做,将需要添加一个方法拦截器。本质上,解决方案应该在以下几行:

@Bean
public Person person() {
    // config setup for adding proxy to all the methods of the proxy class.
    return new Person();
}

在阅读文档时,我发现了以下示例,其中使用XML配置完成了类似的事情。

<bean id="personTarget" class="com.mycompany.PersonImpl">
    <property name="name"><value>Tony</value></property>
    <property name="age"><value>51</value></property>
</bean>

<bean id="myAdvisor" class="com.mycompany.MyAdvisor">
    <property name="someProperty"><value>Custom string property value</value></property>
</bean>

<bean id="debugInterceptor" class="org.springframework.aop.interceptor.DebugInterceptor">
</bean>

<bean id="person" 
    class="org.springframework.aop.framework.Proxyfactorybean">
    <property name="proxyInterfaces"><value>com.mycompany.Person</value></property>

    <property name="target"><ref local="personTarget"/></property>
    <property name="interceptorNames">
        <list>
            <value>myAdvisor</value>
            <value>debugInterceptor</value>
        </list>
    </property>
</bean>

(来源:https://docs.spring.io/spring/docs/3.0.0.M4/reference/html/apbs05.html

在Java配置中实现相同的等效条件是什么?我看着@Scope(...,proxyMode=...),但不知道这对您有什么帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。