Spring主要模块
核心容器(Core Spring container):
容器是Spring框架最核心的部分,它管理着Spring应用中bean的创建、配置和管理。在该模块中,包括了Spring bean工厂,它为Spring提供了DI的功能,通过读取XML文件的方式来实例化对象。基于bean工厂,我们还会发现有多种Spring应用上下文的实现。还提供了许多企业服务。
所有的Spring模块都构建于核心容器之上。
它的核心组件是BeanFactory,它是工厂模式的实现,BeanFactory提供了组件生命周期的管理,组件的创建,装配以及销毁等功能。
Spring上下文(Spring Context):
spring上下文是一个配置文件(扩展核心容器),主要向spring提供上下文信息。如校验,电子邮件,JNDI,国际化等。
Spring AOP:
Spring对面向切面编程提供了丰富的支持。此外其为基于Spring应用程序中的对象提供了事务管理服务,可以不依赖具体的EJB组件,就可以将事务管理集成到应用程序中;。
Spring DAO:
提供了对DAO(Data Access Object,数据访问对象)模式和JDBC的支持。DAO可以实现将业务逻辑与数据库访问的代码分离,从而降低代码的耦合度。通过对JDBC的抽象,简化了开发工作,同时简化了对异常的处理(可以很好的处理不同数据库厂商抛出的异常);
Spring ORM:
Spring框架插入了若干个ORM框架,从而提供了ORM的对象关系工具,例如Hibernate等
Spring Web模块:
Web上下文模块建立在应用程序上下文之上,为基于Web的应用程序提供了上下文。
提供了Servlet监听器的Context和Web应用的上下文。同时还集成了一些现有的Web框架,例如Struts;
Spring MVC:
MVC是一个全功能的构建web应用程序的MVC实现,容纳大量视图技术包括jsp,iText,Titles 等。