1.0 Spring体系架构介绍(基于4.x)

1.0 Spring体系架构介绍(基于4.x)

架构体系图如下:
1.0 Spring体系架构介绍(基于4.x)_第1张图片

1.1 Core Container(核心容器)

​ 该模块主要包含Core、Beans,Context和SpEL模块。其中Core和Beans是整个框架最基础的部分,提供IOC和依赖注入特性。这里最重要的概念就是BeanFactory,提供了以Factor模式来消除Bean之间的依赖问题。

  • Core:模块主要包含Spring框架最基本的核心工具类,Core是其他组件的基础核心。
  • Beans:模块主要包含访问-置文件、创建/管理Bean以及IOC/DI相关的类。
  • Context:继承了Beans的特性 主要为Spring提供大量的扩属,如国际化,事件机制,资源加载等待,AnplicationContext接口是Context樟块的关键。
  • SpEL模块提供了一个强大的语言表达式。

1.2 Aop and Instrumentation

​ 提供符合AOP Alliance标准的而向切面编程的实现,可以让你定义如方法拦截器和切点,从而降低程序之间的据合性。

  • Aspecu模块:提供了与Aspect的集成。
  • Instrumentation桓块:提供用于某些应用程序服务器的类工具支持和类加载器实现。

1.3 Messaging

该模块且有来自Spring Intearation项目的关键抽象,如Message,MessageChannel,MessaceHander等。它们构成基干消息的应用程序的基础。该模块还包括一组注释,用于将消息映射到方法,类似于基于SpringMVC注释的编程模型。

1.4 Data Access/Integration

数据访问/集成层由JDBC,ORM,OXM,JMS和事务模块组成

  • JDBC模块;提供了JDBC抽象层,从而无需进行繁琐的JDBC编码和数据库特定错误代码(不同数据代码可能不同)的解析。
  • 事务模块:支持对实现特殊接口的类以及所有POJO(普通Java对象)进行编程和声明式事务管理
  • ORM模块:该模块为当前流行的ORM(包括JPA,JDO和Hibemate)提供了集成层,使用ORM模块,可以将所有这些O/R映射框架与Spring提供的所有功能结合使用,如前面提到的事务管理功能。
  • OXM模快:提供了一个抽象量,该抽象屏支持Obiect/XML种时实现,例如JAXB、Castor、XMLBeans、JiBX和XStream。
  • JMS模块(Java Messaging Service):包含用于生成和使用消息的功能。从Spring Framework4.1开始,提供了与Spring-Messaging模块集成。

1.5 Web

Web上下文模块建立在应用程序上下文模块之上,为基干Web的应用程序提供上下文支持。该模块包含Web,WebMVC,Web Socket和Web-Porlet模块。

  • Web模块:提供了基本的面向Web的集成功能,如文件上传功能以及使用Servet监听器和面向Web的应用程序上下文对IoC容器的初始化。
  • WebMVC模块(也称为Web-Servlet模块):包含基于Spring的Mddel-View-Controller(MVC)支持和针对Web应用程序的Rest Web服务实现。
  • Web-Portlet模块(也称为Web-Portlet模块):提供Portlet环境中的MVC实现。

1.6 Test

该模块支持使用Junit 或TestNG对Spring 组件进行单元测试和集成测试。

你可能感兴趣的:(Spring架构源码,spring,架构,java)