AOP :可以使用各种功能层去包裹核心业务层。这些功能层以声明的方式灵活应用到系统中。基本核心应用都不知道它们的存在。
<bean id="minstrel" class="com.wecash.rabbitmq.Minstrel"/> <aop:config> <aop:aspect ref="minstrel"> <aop:pointcut id="embark" expression="execution(* *.embarkOnQuest(..))"/> <aop:before pointcut-ref="embark" method="singBeforeQuest"/> <aop:after pointcut-ref="embark" method="singAfterQuest"/> </aop:aspect> </aop:config>