1. AOP编程介绍
OOP:面向对象编程,以对象为中心,进行程序的设计和开发。
AOP:面向切面编程,以程序中的切面为中心,进行程序的设计和开发。可以把业务功能和非业务功能进行分离。
实现AOP编程的方式:
1)动态代理模式
2)使用Spring的AOP模块
3)AspectJ:专业的切面框架
切面:程序中,一些通用的功能和方法或一些非业务的功能。
AOP的核心思想:在不修改原代码的基础上,增加新的功能。
切面:程序中,通用的功能或方法
增强处理:在原方法基础上,额外增加的功能
切入点:要进行增强处理的方法
连接点:用于在切面和切入点,用于传输数据的对象
目标对象:切入点所在的对象
AOP代理:用于组织切入点和切面代码的第三方类
织入:把切面和切入点绑定在一起
增强处理分类:
前置增强:在方法执行前,运行的增强功能
后置增强:在方法执行后,运行的增强功能
异常抛出增强:在方法执行出现异常时,运行的增强功能,只有异常监控功能,不具备异常处理能力
最终增强:作用类似于异常处理的finally语句块,不管方法执行是否出现异常,都会执行
环绕增强:可以在方法前后,增加新的功能,甚至可以控制方法是否执行。
1.1 使用AOP的步骤
第一步:编写增强处理类,定义增强处理的方法:
第二步:在Spring配置文件中,导入AOP命名空间,定义切入点,给切入点织入增强处理:
第三步:启动测试类,调用类中的方法,查看运行的结果:
1.2 异常抛出增强
1.3 最终增强
1.4 环绕增强
1.5 AOP使用总结
第一步:定义增强处理和增强处理方法:
第二步:在配置文件中,给切入点,织入增强处理,不同的增强处理,使用不同标签进行织入:
1.6 使用注解配置AOP
第一步:编写增强处理类,给类和方法添加注解: