Spring学习记录-开篇

开篇-Spring体系架构

[Spring系列]开篇
Spring模块化,开发人员引入需要的模块即可

Core Container

Beans

Beans模块提供了BeanFactory,工厂模式的时下,移除了编码式单例的需要,并且可以把配置依赖从实际编码逻辑中解耦。

Core

Core模块提供了框架的基本组成部分,包括IoC和依赖注入(DI)功能。

Context

Context模块建立在Beans,Core基础上。ApplicationContext作为Context的核心入口。spring-context-support提供了对第三方库集成到Spring上下文的支持(比如EhCache、Guava、JCache)、邮件(JavaMail)、调度(CommomJ,Quartz)、模板(FreeMarker、JasperReports、Velocity)等

validation

SpEL

SpEL模块提供表达式语言功能。在程序运行时查询和操作数据,尤其是数组列表数据,可以缩减代码量,优化代码结构。

其中的依赖关系
[Spring系列]开篇

AOP

AOP模块提供了面向切面的编程实现,允许开发人员定义方法拦截器和切入点对代码进行干净的解耦,从而使实现功能的代码彻底解耦出来。使用源码级的元数据,可以用类似于.Net属性的方式合并行为信息到代码中。

Aspects

Aspects模块提供了AspectJ集成,这是一个功能强大且成熟的面向切面编程(AOP)框架

Instrumentation

Instrumentation模块在一定的应用服务器中提供了类instrumentation的支持和类加载器的实现。
[Spring系列]开篇

Messaging

Messaging模块为STOMP提供了支持作为在应用程序中WebSocket子协议使用。它也支持一个注解编程模型,它为了选择(路由)和处理来自WebSocket客户端的STOMP信息。

Data Access/Integeration

JDBC

JDBC模块提供了JDBC抽象层,消除了冗长的JDBC编码和对数据库提供商特定错误代码的解析。

ORM

ORM模块提供了对流行的对象关系映射API的集成,包括JPA、JDO和Hibernate等。通过此模块可以让这些ORM框架和Spring的其他功能整合,比如事务管理。

OXM

OXM模块提供了对OXM实现测支持,比如JAXB,Castor,XML Beans,JiBX,XStream等。Spring中,XML形式定义解析Bean需要依赖此模块。

JMS

JMS模块包括生产者和消费消息的功能。

Transactions

事务模块为实现特殊接口类及所有的POJO支持编程时和声明式事务管理。(说明:编程式事务需要开发人员自己编写beginTransaction()、commit()、rollback()等事务管理方法,声明式事务是通过注解或配置由spring自动处理,编程式事务粒度更细,例如:@Transactional注解的使用)

Web(MVC/Remoting)

WebSocket

此模块为WebSocket-based提供了支持,而且在web应用中提供了客户端和服务端之间通信的两种方式。

Servlet(WebMVC)

此模块为web应用提供了模型视图控制(MVC)和REST Web服务实现。Spring的MVC框架可以使模型领域模型代码和Web表单完全地分离,且可以与Spring框架其他所有功能进行继承。(比如Servlet中做参数解析时候,做数据绑定的时候,可以用到spring-context-validation进行参数校验)

Web

Web模块提供面向Web的基本功能和面向web应用的上下文,比如多部分(multipart)文件上传功能、使用Servlet监听器初始化IoC容器等。另外还包括HTTP客户端以及Spring远程调用中与web相关的部分。

Portlet

此模块提供了用于Portlet环境的MVC实现,并反映了spring-webmvc模块功能。(扫盲:Protlet是基于Java的Web组件,由Protlet容器管理,并处理请求,生产动态内容。Protals使用portlets作为可插拔用户接口组件,提供信息系统的表示层。)

Test

测试模块支持对具有JUnit或TestNG框架的Spring组件的测试

相关文章:

  • 2021-07-14
  • 2022-01-19
  • 2021-08-25
  • 2021-11-19
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-10-14
  • 2022-12-23
  • 2021-07-13
  • 2022-12-23
  • 2021-04-17
  • 2021-10-24
相关资源
相似解决方案