(1)、Spring Core
核心容器提供Spring框架的基本功能,是框架的最基础部分,Spring以Bean的方式组织和管理Java应用中的各个组件及其关系。Spring使用BeanFactory来产生和管理Bean,它是工厂模式的实现。BeanFactory使用控制反转(IOC)模式将应用的配置和依赖性规范与实际的应用程序代码分开。BeanFactory使用依赖注入(DI)的方式提供给组件依赖。
(2)、Spring Context
Spring上下文是一个配置文件,向Spring框架提供上下文信息。Spring上下文包括企业服务,如JNDI、EJB、电子邮件、国际化、校验和调度功能。
(3)、Spring AOP
Spring AOP模块直接将面向切面的编程功能集成到了Spring框架中,可以有效的防止代码上功能的耦合,这个模块是在Spring应用中实现切面编程的基础。
(4)、Spring DAO
DAO模块主要目的是将持久层相关问题与一般的的业务规则和工作流隔离开来,Spring的Dao模块对传统的JDBC进行了抽象,还提供了一种比编程性更好的声明性事务管理方法。Spring中的DAO提供一致的方式访问数据库,不管采用何种持久化技术,Spring都提供一直的编程模型。Spring还对不同的持久层技术提供一致的DAO方式的异常层次结构。
(5)、Spring ORM
Spring与所有的主要的ORM映射框架都集成的很好,包括Hibernate、JDO实现、TopLink和IBatis等。Spring为所有的这些框架提供了模板之类的辅助类进行“对象/关系”映射,达成了一致的编程风格。
(6)、Spring Web
Web上下文模块建立在应用程序上下文模块之上,为基于Web的应用程序提供了上下文。Web层使用Web层框架,可选的,可以是Spring自己的MVC框架,或者提供的Web框架,如Struts、Webwork、tapestry和jsf。
(7)、Spring Web MVC
MVC(Model-View-Controller)框架是一个全功能的构建Web应用程序的MVC实现。通过策略接口,MVC框架变成为高度可配置的。Spring的MVC框架提供清晰的角色划分:控制器、验证器、命令对象、表单对象和模型对象、分发器、处理器映射和视图解析器。Spring支持多种视图技术。