spring中手动实现AOP编程

手动实现AOP编程

AOP可以实现“业务代码”与“关注点代码”分离


业务代码”与“关注点代码

举例~

spring中手动实现AOP编程

分析总结:

关注点代码,就是指重复执行的代码。

业务代码与关注点代码分离,关注点代码写一次即可

开发者只需要关注核心业务;

运行时期,执行核心业务代码时候通过代理动态植入关注点代码;


概述:

Aop  aspect object programming  面向切面编程

功能: 让关注点代码与业务代码分离!

关注点,

重复代码就叫做关注点;

切面,

 关注点形成的类,就叫切面()

 面向切面编程,就是指 对很多功能都有的重复的代码抽取,再在运行的时候网业务方法上动态植入“切面类代码”。

切入点,

执行目标对象方法,动态植入切面代码。

可以通过切入点表达式,指定拦截哪些类的哪些方法; 给指定的类在运行的时候植入切面类代码。




举个小栗子:(通过静态代理)



spring中手动实现AOP编程

spring中手动实现AOP编程

spring中手动实现AOP编程

spring中手动实现AOP编程

spring中手动实现AOP编程

spring中手动实现AOP编程

spring中手动实现AOP编程




通过动态代理 工厂类加载



spring中手动实现AOP编程

spring中手动实现AOP编程

spring中手动实现AOP编程

spring中手动实现AOP编程



spring中手动实现AOP编程



spring中手动实现AOP编程


spring中手动实现AOP编程


spring中手动实现AOP编程