现在配置的是拦截多个方法,但只能运行一个拦截方法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> 

解决方案 »

  1.   

    我是这样搞的, 不知道你的是什么样的:
    <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>
      

  2.   


    <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> 
      

  3.   

      <property name="advice">  
        <ref local="beforeAdvice"/> 
        </property>  把ref属性改为value就可以配置多个啦