Spring有可能成为所有企业应用程序的一站式服务点,然而,spring是模块化的,允许你挑选和选择适合于你的模块,不必要把剩余部分也引入,下面的部分是对spring框架中所有可用的模块做出详细的介绍
核心容器有核心、Bean、上下文和表达式语言模块组成。他们的细节如下:
核心模块提供了框架的基本组成部分,包含IOC和依赖注入功能。
Bean模块提供BeanFactory,它是一个工厂模型的复杂实现
上下文模块建立在有核心和Bean模块提供的坚实的基础上,他是访问定义和配置的任何对象的媒介,AppliactionContext接口是上下文接口的重点
表达式语言模块在运行时提供了查询和操作一个对象图的强大的表达式语言。
数据访问/集成
数据访问/集成包含JDBC.ORM.OXM.JMS和事务处理模块,他们的细节如下
JDBC模块提供了删除冗余的JDBC相关编码的JDBC抽象层。
ORM模块为流行的对象关系映射API,包含JPA,JDO,Hibernate和IBatis,提供了集成层。
OXM模块提供了抽象层,它支持对JAXB,Castor,XMlBeans,JiBx和XStream的对象/xml映射实现。Java消息服务JMS模块包含生产和消费的信息的功能。
事务模块为实现特殊接口的类及所有的POJO支持编程式和声明式事务管理。
Web
Web层由web,web-mvc,web-Scoket和web-Porlet组成。
Web模块提供了基本的面向we的集成思想,例如多个文件上传的功能和使用servlet监听器和面向web应用程序的上下文初始哈市IOC容器
Web-MVC模块包含spring的模块视图-控制器-(MVC)实现了web应用程序
Web-Socket模块为WebSocket-based提供了支持,而且在web应用程序中提供了客户端和服务端之间通信的两种方式。
Web-Porlet模块提供了portlet环境中实现mvc,并且反映了web_socket模块的功能。
其他
还有其他的一些重要的模块箱Aop,Aspects,Instrumentation,web和测试模块,他们的细节如下,
Aop模块提供了面向切面的编程实现,允许你定义拦截器和切入点对代码进行干净的解耦,他实现了应该的分离的功能。
Aspects模块提供了与AspectJ的集成,这是一个功能强大并且成熟的面向切面编程的框架
Instrmentation模块在一定的应用程序中提供了类instrumentation的支持和类加载器的实现
Messaging模块为Stomp提供了作为应用程序中webSocket自协议的使用,他支持一个注解编程模型,他是为了选路和处理来自webSocket客户端的Stomp信息
测试模块支持对具有Junit和TestNG框架的spring组件的测试