通过xml配置一样可以完成面向切面1一样的功能。
<bean id="audience" class="com.beanConfig.aspectAOP.Audience"></bean>
<bean id="aroundAudience" class="com.beanConfig.aspectAOP.AroundAudience"></bean>
<bean id="trackCounter" class="com.beanConfig.aspectAOP.TrackCounter"></bean>
<bean id="blankDisc" class="com.beanConfig.classes.bean.BlankDisc">
<property name="title" value="sgt.Papers"></property>
<property name="artist" value="The Beatles"></property>
<property name="tracks">
<list>AAAAAA</list>
<list>BBBBBB</list>
<list>CCCCCC</list>
<list>DDDDDD</list>
<list>EEEEEE</list>
<list>FFFFFF</list>
<list>HHHHHH</list>
</property>
</bean>
<aop:config>
<aop:aspect ref="audience">
<!--定义切点-->
<aop:pointcut id="performance" expression="execution(* com.beanConfig.interfaceS.Performance.perform())"/>
<aop:before method="silencePhone" pointcut-ref="performance"></aop:before>
<aop:before method="takeSeats" pointcut-ref="performance"></aop:before>
<aop:after method="applaues" pointcut-ref="performance"></aop:after>
<aop:after method="demandRefund" pointcut-ref="performance"></aop:after>
</aop:aspect>
<!--环绕通知-->
<aop:aspect ref="aroundAudience">
<aop:pointcut id="performance" expression="execution(* com.beanConfig.interfaceS.Performance.perform())"/>
<aop:around method="watchPerformance" pointcut-ref="performance" />
</aop:aspect>
<!--传参-->
<aop:aspect ref="trackCounter">
<aop:pointcut id="trackplayed" expression="execution(* com.beanConfig.classes.bean.BlankDisc.playTracks(int)) and args(trackNumber)"/>
<aop:before method="countTrack" pointcut-ref="trackplayed"/>
</aop:aspect>
</aop:config>