Java面试目录
谈谈你对 Spring AOP 的理解
Spring AOP是面向切面编程,通过代理模式来实现。
我们将与业务逻辑无关,同时又需要在业务执行前后调用的逻辑封装起来,利用代理来进行统一调度。可以减少系统的重复代码,降低耦合度,增加可维护性。使用场景包括:事务处理,记录日志,权限控制等。
Spring AOP中包括了两种代理模式:动态代理以及静态代理,Spring会根据被代理对象是否实现了接口来自动选择使用哪种代理。当被代理对象有实现接口时,默认使用JDK动态代理;当被代理对象没有实现接口时,默认使用Cglib静态代理。
JDK动态代理通过反射来实现代理。在运行期会动态生成代理类,用后销毁。文章来源:https://www.toymoban.com/news/detail-815269.html
Cglib静态代理通过生成被代理类的子类实现代理。这种方法限制了被代理类不能使用final来修饰。在编译期时生成代理子类的字节码。文章来源地址https://www.toymoban.com/news/detail-815269.html
到了这里,关于谈谈你对 Spring AOP 的理解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!