Spring的Advices
Advices实现了Aspect的真正逻辑。由于织入至Targets的实际不同,spring提供了不同的Advices,像Before Advice,After Advice,Around Advice,Throw Advice。
(1)、Before Advice
通过实现MethodBeforeAdvice来定义
(2)、After Advice
通过实现AfterReturningAdvice来定义
(3)、Around Advice
通过实现MethodInterceptor来定义
(4)、Throw Advice
通过实现ThrowsAdvice来定义
我们将使用一个代理的bean aaa,给这个代理的bean加上我们spring的advice,看看他的日志输出表现。我们通过代码示例来说明:
1、定义基本的advice Bean以及要被调用的类
(1)、beforeAdvice的Bean
(2)、afterAdvice的bean
(3)、Around advice的Bean
(4)、Throw Advice的Bean
(5)、要被代理的类
2、在配置文件中声明我们的bean
3、在main函数中调用
4、控制台的显示
上边的日志已经说明了,我们给一个bean定义一个代理的bean,然后指定他的拦截器序列,就能在bean中的方法调用的前后,以及抛出异常后进行一系列我们自己定义的操作。