Spring是一个为java应用的综合基础设施提供支持的java开发平台,因此我们可以专注于应用程序。
1.Spring的基础组件
Spring Framework总共有十几个组件,但真正核心得组件只有几个。下图为Spring官网上的总体架构图。
spring的核心组件只有三个,Bean,Context,Core。
Bean主要解决了3件事:Bean的定义,Bean的创建以及Bean的解析
Context作为IOC容器主要完成以下事:
标识一个应用环境
利用BeanFactory创建Bean对象
保存对象关系表
能够捕获各种事件
Core重要组成部分就是定义了资源的访问方式,这种把所有资源都抽象成一个接口的方式很值得在以后的设计中学习。
2.Spring的设计理念
Spring之所以这么流行是因为spring解决了一个非常关键的问题,它可以把对象之间的依赖关系转而用配置文件来管理,也就是他的依赖注入机制。
这个注入关系被IOC容器管理,IOC容器就是被Bean包裹的对象。Spring正是通过把对象包裹在Bean中从而达到管理这些对象及做一系列额外操作
的目的。
这种设计策略完全类似于java实现OOP的设计理念,他们都是构建一个数据结构,然后根据这个数据结构设计它的生存环境,并让他们在这个环境中
按照一定的规律不停的运动,在他们不停的运动中设计一系列与环境或者与其他个体完成信息交换。
这样想来我们用到的其他框架大概都是类似的设计理念。
参考资料 :
《深入分析 java web 技术内幕》
Spring官网