浅谈Aop的实现原理

Aop是spring的动态代理、切面编程,是对oop的一种衍生和继承也是是函数式编程的一种衍生范型,对项目的业务需求进行拆分减少耦合度提高了方法的重用性,减少了对开发和后期代码维护的工作量

1.个人理解

主要是为了减少冗余性,避免出现同一种代码多处存在,需要更改的时候要把所有使用的地方全部更改一次。
还有就是可以更改一个程序的执行顺序比较明显的就是spring中的 Controller、Service、DAO这三个模块的调用和解耦

2.实现的方式

有两种一种为:java JDK的实现(Proxy.newProxyInstance()这个方法)

https://www.cnblogs.com/cdf-opensource-007/p/6443314.html

另一种是CGLib (这种的代理操作太多了,我放一个连接了解一下)

https://blog.csdn.net/gyshun/article/details/81000997 

猜你喜欢

转载自blog.csdn.net/zhaohan___/article/details/88571169