Spring的AOP的XML开发(重要指数五颗星*****)
一、AOP的基本概述:
1、什么是AOP呢:
AOP面向切面编程。AOP是OOP的扩展和延伸,解决开发遇到的问题。
二、Spring的底层的AOP实现原理:
1)动态代理:
-
JDK动态代理:只能对实现了接口类产生代理。
-
Cglib动态代理(类似于javassist第三方代理技术),对没有实现接口的类产生代理对象,生成子类对象。
三、Spring的AOP开发(AspectJ 的XML的方式)
四、AOP相关的术语:
五、Spring的AOP的入门(AspectJ 的XML的方式):
1、创建web项目,引入jar包:
1)引入基本的开发包:
2)引入AOP开发相关的jar包:
2、引入Spring的配置文件:
1)引入AOP的约束:
2)编写目标类并完成配置:
3)编写测试类:
Spring整合Junit单元测试:
4)编写一个切面类:
编写切面:
将切面类交给Spring:
通过AOP的配置实现:
六、Spring的通知类型:
1、前置通知:在目标方法执行之前进行操作:
- 前置通知:获得切入点的信息:
2、后置通知:在目标方法执行之后进行操作:
- 获得方法的返回值:
3、环绕通知:在目标方法执行之前和之后进行操作:
环绕通知可以阻止目标方法的执行:
4、异常抛出通知:在程序出现异常的时候,进行操作:
5、最终通知:无论代码是否有异常,总会执行:
不管有没有异常,最终通知都会执行:
6、引介通知(不用会)
七、Spring的切入点表达式写法:
1、切入点表达式语法:
来个切面,想增强就增强,不想要直接去掉:特别方便灵活。