Java框架之Spring AOP (Aspect Oriented Programming) 面向切面编程是什么?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/baidu_34122324/article/details/85134725

Spring AOP是什么?

Spring AOP是面向切面编程,将功能代码从业务逻辑代码中分离出来。

允许程序通过分离的应用业务逻辑与系统级别服务

程序员只需专注自己的业务逻辑,而不需要管系统级服务。

容器中的对象能享有容器中的公共服务(日志、安全)。


它是如何做到的?(原理)

通过动态代理做到这一点。

用到了代理模式,代理模式是一种静态代理,而动态代理就是利用反射和动态编译将代理模式变成动态的

得知被代理类后通过反射得知他的一切信息,然后动态编译成代理类的class文件(动态组装成代理类,生成java文件,再编译成class文件)。

猜你喜欢

转载自blog.csdn.net/baidu_34122324/article/details/85134725