Spring IOC/AOP原理极简概念入门

1、原始tomcat+servlet的编码原理

  • Spring IOC/AOP原理极简概念入门

2、Spring IOC原理

  • Spring IOC/AOP原理极简概念入门

  • 总结

    • 1、tomcat在启动的时候,会启动Spring的容器

    • 2、spring的容器根据xml的配置或者注解,实例bean对象,再根据xml配置或者注解,对bean对象之间的引用关系进行依赖注入(一个bean依赖了另一个bean)

    • 3、底层通过 反射技术 ,直接根据你的类构建相应地对象

    • 系统的类与类之间实现了 解耦合

3、Spring AOP机制

  • 在实现数据库业务代码的类中,通常会涉及一些 事务性的数据库逻辑方法 ,这些方法会需要进行 事务管理(开启,回滚,提交) ,这些重复性质的代码,spring就会通过aop机制(核心是 动态代理技术 )进行事务管理。

  • 过程

    • 做切面:

      • 某些类(比如MyserviceXXX类) 中的所有方法中都进行织入代码,在这些方法开始运行的时候,都会区开启一个事务,在这些所有的方法执行完毕之后,判断一下是否抛出异常来判断一下,如果抛出异常就回滚事务,如果没有就提交事务。

  • cgclib & jdk动态代理

    • 如果 一个类实现了某个接口 ,spring aop会使用 jdk动态代理 ,生成一个实现同样的接口的代理类,构造一个实例对象出来。

    • 一个类没有实现接口 ,spring aop会改用 cglib生成动态代理 ,其会生成一个该类的子类出来,动态生成字节码,覆盖一些方法,在方法里进行增强

原文 

https://juejin.im/post/5e89a6e7e51d45470d5274ec

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » Spring IOC/AOP原理极简概念入门

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址