Spring源码从开始到放弃
Posted tootwo2
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring源码从开始到放弃相关的知识,希望对你有一定的参考价值。
参考《Spring技术内幕》分析。
github上面有spring的源码(https://github.com/spring-projects/spring-framework)
spring最核心两个模块有IOC和AOP。
spring IOC容器设计中有几个基础的概念:
1、BeanFactory,这个系的容器只实现容器的最基本功能。下图为BeanFactory的结构。
2、ApplicationContext应用上下文,这是作为容器的高级形态存在,在简单容器的基础上增加了许多面向框架的特性,同时对应用环境做了适配。根据ApplicationContext的继承关系可以看出,ApplicationContext除了提供了容器的基本功能外,还提供了一些附加服务:支持不同的信息源(扩展MessageSource,支持国际化),访问资源(继承ResourceLoader和Resourceshang1,可以从不同的地方得到Bean资源),支持应用事件(继承接口ApplicationEventPublisher)
3、BeanDefinition,Spring通过定义BeanDefinition来管理基于Spring的应用中的各种对象以及它们之间的相互依赖关系。其中可以看到定义了Bean的信息。
4、FactoryBean,这不是简单的Bean,而是一个能产生或者修饰对象生成的共产Bean,它的实现与设计模式中的工厂模式和修饰器模式类似
以上是关于Spring源码从开始到放弃的主要内容,如果未能解决你的问题,请参考以下文章
spring framework源码maven构建版及一点经验总结
你有一份来自春天的信—Spring5.x 源码分析 : 从容器启动开始