AOP学习

Posted liaoxiaolao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AOP学习相关的知识,希望对你有一定的参考价值。


<
property name="interceptorNames"> <!-- 相当于包MyMethodBeforeAdvice前置通知和代理对象关联,我们 也可以把通知看出拦截器,structs2核心拦截器 --> <!-- 多个value是数组注入,需要使用list --> <list> <value>MyMethodBeforeAdvice</value> <!-- 织入后置通知 --> <value>myAfterReturningAdvice</value></list> </property>

name是不能瞎写的,因为在ProxyFactoryBean中调用的方法名是:

setInterceptorNames()

提一个问题

class A{

//private String name;

public void setName(String name){

System.out.println("name"+name);

}

}

beans.xml

<bean id="a" class="...A">

<property name="name" value="顺平"/>

</bean>

A a=new A();

a.setName("顺平");

不是看A中的属性,而是看beans.xml中的属性。

比如方法名为setEE(),就去设置属性eE.

技术分享图片

①前置通知

②后置通知

③环绕通知

 拦截对目标方法的调用

环绕通知,好像把真正要执行的动作包围了。

④异常通知

当目标方法抛出异常后自动调用

技术分享图片

⑤引入通知

自定义切入点

技术分享图片

 


以上是关于AOP学习的主要内容,如果未能解决你的问题,请参考以下文章

阿里四面:你知道Spring AOP创建Proxy的过程吗?

Spring AOP学习

spring学习笔记AOP

springBoot AOP学习

Spring框架学习05——AOP相关术语详解

SpringBoot AOP学习:Spring AOP实现日志功能