现在配置的是拦截多个方法,但只能运行一个拦截方法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>
如何配置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>
<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>
<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>
<ref local="beforeAdvice"/>
</property> 把ref属性改为value就可以配置多个啦