Spring AOP的设计分析

2016-11-11    分类: 网站建设

大家都知道,AOP模块是 Spring的核心模块,虽然在Java社区里 Aspectj是最完整的AOP

框架,但 Spring AOP也提供了另外一种实现,这种实现并不是 Aspectj的竞争者,相反,

Spring AOP还将 Aspectj集成了进来,为IoC容器和 Spring应用开发提供了一个一致性的AOP解决方案。

Spring AOP的核心技术是上一小节介绍的JDK动态代理技术。以动态代理技术为基础,

设计出了一系列AOP的横切实现,比如前置通知、返回通知、异常通知等。同时, SpringAOP还提供了一系列的Pointcut来匹配切入点,可以使用现有的切入点来设计横切面,也可以扩展相关的 Pointcut方法来实现切入需求。

在Spring AOP中,虽然对于AOP的使用者来说,只需要配置相关的Bean定义即可,但仔细分析 Spring AOP的内部设计可以看到,为了让AOP起作用,需要完成一系列过程,比如,需要为目标对象建立代理对象,这个代理对象可以通过使用JDK的 Proxy来完成,也可以通过第三方的类生成器 CGLIB来完成。然后,还需要启动代理对象的拦截器来完成各种横切面的织入,这一系列的织入设计是通过一系列 Adapter来实现的。通过一系列Adapter的设计,可以把AOP的横切面设计和 Proxy模式有机地结合起来,从而实现在AOP中定义好的各种织入方式。具体的设计实现可以参考后面的内容,这里只是简要介绍一下。

本文题目:Spring AOP的设计分析
网页路径:https://www.cdcxhl.com/news13/64713.html

成都网站建设公司_创新互联,为您提供商城网站标签优化定制网站软件开发网页设计公司网站设计

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都app开发公司