【Spring】spring模块和spring portfolio

spring模块

在spring4.0版本中,共包含20个不同的模块,可以划分为6类不同的功能

Spring核心容器

容器是spring框架最核心的部分,管理着Spring应用中bean的创建、配置和管理。

包括bean工厂和应用上下文。还包括一些企业服务,如E-mail、JNDI访问、EJB集成与调度

Spring的AOP模块

在AOP模块中,Spring对面向切面编程提供了丰富的支持。是Spring中开发切面的基础

数据访问与集成

Spring的JDBC和DAO(data access object)模块抽象了jdbc的样板是代码,使数据库代码更加简单明了。

除了JDBC,Spring还提供了对于ORM(object-relation mapping)的支持,Spring的ORM模块建立在对DAO的支持之上,并为多个ORM框架提供了一种构建DAO的简便方式。Spring对许多流行的ORM框架进行了集成,包括Hibernate、Java Persisternce API、Java Data Object和iBatis SQL Maps

Web与远程调用

该模块为web提供了MVC框架

另外,该模块还提供了多种构建与其他应用交互的远程调用方案。Spring远程调用功能集成了RMI(Remote Method Invocation)、Hessian、Burlap、JAX_WS,同时spring还自带了一个远程调用框架Http invoker。Spring还提供了暴露和使用REST API的良好支持。

Instrumentation

该模块提供了为JVM添加代理的功能(较少使用)

测试

Spring为使用JNDI、Servlet和Portlet编写单元测试提供了一系列的mock对象实现

对于集成测试,该模块为加载spring应用上下文中的bean集合以及与spring上下文中的bean进行交互提供了支持


Spring Portfolio

spring protfolio几乎为每一个领域的java开发提供了编程模型:

 - Spring Web Flow

 - Spring Web Service

 - Spring Security

 - Spring Integretion

 - Spring Batch

 - Spring Data

 - Spring Social

 - Spring Mobile

 - Spring for Android

 - Spring boot