Spring概述
Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架,它主要是为了解决企业应用开发的复杂性而诞生的。 Spring的存在是因为它自身有着得天独厚的优势:它定位的领域是许多其他流行的framework没有的,Spring是全面的和模块化的,它的设计从底部帮助你编写易于测试的代码,Spring是潜在的一站式解决方案。
Spring的优点可以总结为以下几点:
* 低侵入式设计,代码污染极低
* WriteOnce,RunAnywhere
* DI有效的降低了耦合度
* AOP提供了通用任务的集中管理
* ORM和DAO简化了对数据库访问
* 高度开放性,并不强制
这些优点使得Spring给开发带来了很多好处:
* 可以有效组织中间层对象
* 使用统一的配置文件
* 促进良好编程习惯,减少编程代价
* 易于单元测试
* 使EJB成为一种备选
* 为数据存取提供了一致的框架
Spring的特点可以总结为以下几点:
* 核心容器(SpringCore)
* 应用上下文(SpringContext)
* AOP模块(SpringAOP)
* JDBC和DAO模块(SpringDAO)
* 对象实体映射(SpringORM)
* Web模块(SpringWeb)
* MVC模块(SpringWebMVC)
Spring的核心模块是轻量级的IoC容器,它的目标是为J2EE应用提供了全方位的整合框架,在Spring框架下实现多个子框架的组合,这些子框架之间可以彼此独立,也可以使用其它的框架方案加以代。
Spring的IoC(Inversion of Control,控制反转)机制可以让开发者将对象的依赖关系交给Spring容器来管理,从而降低了对象之间的耦合度,让开发变得更加灵活和高效。
Spring的AOP(Aspect-Oriented Programming,面向切面编程)机制可以将通用任务集中管理,让开发者可以更方便地实现日志记录、安全检查、缓存等功能。
Spring的ORM(Object-Relational Mapping,对象关系映射)机制可以将Java对象映射到数据库表中,让开发者可以更方便地访问数据库。
Spring的DAO(Data Access Object,数据访问对象)机制可以将数据访问的逻辑从业务逻辑中分离出来,让开发者可以更方便地实现数据访问。
Spring的MVC(Model-View-Controller,模型-视图-控制器)机制可以将应用程序分离成模型、视图和控制器三个部分,让开发者可以更方便地实现Web应用程序。
Spring是一个功能强大且灵活的框架,可以帮助开发者更方便地实现企业应用开发。