简介
官方一句话介绍:
The Spring Framework is a lightweight solution and a potential one-stop-shop for building your enterprise-ready applications.
Spring的特点:
- lightweight:相比较与EJB而言。
- modular:Spring Framework拆分成了20多个包,我们可以按需使用。
- non-intrusive:非侵入性的框架,降低对特定框架的依赖。对以后架构变迁有一定的好处。
- AOP及IOC:Spring曾经的招牌特性,通过AOP可以更好的实现一些通用功能(安全控制,日志等),提高代码的可维护性;而通过IOC可以动态的注入依赖对象,意味着我们可以动态替换依赖对象,间接引导大家“面对接口编程”,有利于实现代码“对修改关闭,对扩展开发”。
总体架构图

Core Container
包含了spring-core、spring-beans、spring-context、spring-context-support、spring-expression这几个模块。
其中,spring-core和spring-beans是最基础的两个模块,他们提供了IOC特性,通过BeanFactory获取相关Bean。spring-context依赖于前两者,在BeanFactory的基础上,增加了上下文相关的特性(国际化、事件、资源管理等)。spring-context-support用于集成第三方的框架。spring-expression,见名知意,实现了Spring Expression Language,可以简化数据访问。
AOP and Instrumentation
包含以下模块;
spring-aop:提供spring的AOP特性;
spring-aspects:用于集成AspectJ,通过AspectJ提供Spring的AOP特性。
spring-instrument:支持JVM的监控和动态操作类的能力,这样就能在虚拟机级别支持AOP。
spring-instrument-tomcat:专供tomcat,包含Spring’s instrument agent。
Messaging
spring-messaging:用于支持基于消息的程序。
Data Access/Integration
包含spring-jdbc、spring-tx、spring-orm、spring-oxm、spring-jms,用于支持JDBC、实务管理、orm框架(JPA、Hibernate)、Object/XML mapping、JMS。
WEB
包含以下模块;
spring-web:提供WEB层相关的一些基本特性,如多文件上传、支持通过Servlet listener实现IOC容器初始化等。
spring-webmvc:Spring的MVC框架。
spring-websocket:提供对WebSocket的支持。
spring-webmvc-portlet:为Portlet环境提供MVC的相关实现。
TEST
包含spring-test模块,基于JUnit或TestNG,支持Spring组件的单元测试和集成测试。
Spring Framework是一个轻量级的企业级应用框架,以其模块化、非侵入性著称,提供AOP和IOC等功能。核心Container包含spring-core、beans、context等模块,提供Bean管理和上下文支持。AOP模块支持面向切面编程,增强代码可维护性。数据访问/集成模块涵盖了JDBC、ORM和JMS等。WEB模块包括MVC框架和WebSocket支持,TEST模块则提供了测试支持。

331

被折叠的 条评论
为什么被折叠?



