spring aop 拦截类 对Spring AOP框架实现的结构分析(3)

电脑杂谈  发布时间:2018-01-10 07:09:05  来源:网络整理

注:此处为了简单忽略了一些概念描述:

1.对引介,混入继承没有涉及。

2.对通知链的管理,如:同一切入点多个通知对象之间的执行顺序问题;

3.上述的描述是Spring AOP框架本身,所提供的使用方式是编程式,这种使用方式太过于低级,以至于我们在九成的情况下不会使用到,主流的使用方式是配置化的声明式使用方式,将AOP与IoC结合起来使用才能发挥出最大威力,ProxyFactoryBean提供了有限的声明式使用方式,但严格来说它仍是编程式,因为ProxyFactoryBean是一个FactoryBean,一个FactoryBean的目标就是以编程式替换复杂的配置式,而且最重要的是它暴露的API太过低级,配置文件中bean元素的abstract属性对配置文件的长度提供有限的帮助,自动代DefaultAdvisorAutoProxyCreator很好的隐藏了低级的API,DefaultAdvisorAutoProxyCreator是一个BeanPostProcessor,用于完成AOP框架与IoC容器的集成工作,但是这种方式依然没有解决需要同XXXAdvisor这样的低级API打交道的问题;

随着spring2.x引入的xml元素<aop:config>及@Aspect注解的AspectJ描述性风格的出现,使用Spring AOP框架的使用达到完全的声明式标准,这种风格也使得Spring 事务框架受益,从TransactionProxyFactoryBean类到xml元素<tx:advice>、<aop:config>及@Transactional注解,

使得我们只需关注高层描述,而无需涉及低级API。spring aop 拦截类

附上DefaultAdvisorAutoProxyCreator的类:

总结:

要全面理解AOP相关概念,回答下述问题是必须的。

1。spring aop 拦截类AOP概念产生的背景,AOP所要解决的问题,AOP所涉及的概念,

2。实现一个AOP框架所需要注意的问题是什么,

3。不同AOP框架实现之间的比较,

4。AOP的一些副作用讨论。

参考目录:

《Expert One-on-One J2EE Development without EJB》

《Professional Java Development with the Spring Framework》

《Mastering AspectJ》

推荐:Spring 的AOP框架原理

[ Spring??的AOP框架基本使用步骤?? 1.??产生一个代理工厂?? 2.??给代理工厂加入通知者,也叫织入通知 3.??设置被代理对象,设置目标 4.??获取一个代理实例??]


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-59495-3.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 蔡淑臻
      蔡淑臻

      你知道你给我们讲讲

      • 付湘江
        付湘江

        是个男人就不会像这样的想法

    热点图片
    拼命载入中...