Spring Aop配置问题

wchengyu 2008-10-29 11:49:57
现在配置的是拦截多个方法,但只能运行一个拦截方法beforeAdvice,afterAdvice,或compareInterceptor
如何配置3个拦截方法都执行?

<beans>
<bean id="beforeAdvice" class="springAop.BeforeAdvice"></bean>
<bean id="afterAdvice" class="springAop.AfterAdvice"></bean>
<bean id="compareInterceptor" class="springAop.CompareInterceptor"></bean>
<bean id="studentTarget" class="springAop.StudentImpl"></bean>

<bean id="student" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces">
<value>springAop.IStudent</value>
</property>
<property name="interceptorNames">
<value>student1</value>
</property>
<property name="target">
<ref bean="studentTarget"/>
</property>
</bean>
<bean id="student1" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
<property name="advice">
<ref local="beforeAdvice"/>
</property>
<property name="pattern">
<value>.*save.*</value>
</property>
</bean>
</beans>
...全文
106 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lang3879 2008-11-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sunxing007 的回复:]
XML code
<bean id="userService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="target" ref="userServiceTarget"/>
<property name="interceptorNames">
<list>
<value>loginMethodBeforeAdvice </value>
<value>afterReturningAdvice </value>
<value>onThrowsAdvice </value>
<value>loginAroundAdvice </value>
</list>
</property>
</bean>
[/Quote]
嗯,同意
java__king 2008-11-01
  • 打赏
  • 举报
回复
<property name="advice">
<ref local="beforeAdvice"/>
</property>

把ref属性改为value就可以配置多个啦
sunxing007 2008-10-30
  • 打赏
  • 举报
回复

<bean id="userService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="target" ref="userServiceTarget"/>
<property name="interceptorNames">
<list>
<value>loginMethodBeforeAdvice </value>
<value>afterReturningAdvice </value>
<value>onThrowsAdvice </value>
<value>loginAroundAdvice </value>
</list>
</property>
</bean>
sunxing007 2008-10-30
  • 打赏
  • 举报
回复
我是这样搞的, 不知道你的是什么样的:


<bean id="userService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="target" ref="userServiceTarget"/>
<property name="interceptorNames">
<list>
<value>loginMethodBeforeAdvice</value>
<value>afterReturningAdvice</value>
<value>onThrowsAdvice</value>
<value>loginAroundAdvice</value>
</list>
</property>
</bean>
jingtongxml 2008-10-30
  • 打赏
  • 举报
回复
你是spring那个版本的

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧