本文详细介绍 Spring 框架,包括 Spring 简介,为什么需要 Spring,Spring 带给我们什么和 Spring 框架的
Rod Johson 在 2002 年编著的《Expert one to one J2EE design and development》一书中,对 Java EE 正
统框架臃肿、低效、脱离现实的种种现状提出了质疑,并积极寻求探索革新之道。以此书为指导思想,他
编写了 interface21 框架,这是一个力图冲破 Java EE传统开发的困境,从实际需求出发,着眼于轻便、灵
巧,易于开发、测试和部署的轻量级开发框架。
Spring 框架即以 interface21 框架为基础,经过重新设计,并不断丰富其内涵,于 2004 年 3 月 24 日,发
布了 1.0 正式版。同年他又推出了一部堪称经典的力作《Expert one-to-one J2EE Development without EJB》,
该书在 Java 世界掀起了轩然大波,不断改变着 Java 开发者程序设计和开发的思考方式。在该书中,作者
根据自己多年丰富的实践经验,对 EJB 的各种笨重臃肿的结构进行了逐一的分析和否定,并分别以简洁实
用的方式替换之。至此一战功成,Rod Johnson 成为一个改变 Java 世界的大师级人物。
传统 J2EE 应用的开发效率低,应用服务器厂商对各种技术的支持并没有真正统一,导致 J2EE 的应用没有
真正实现 Write Once及 Run Anywhere 的承诺。Spring 作为开源的中间件,独立于各种应用服务器,甚至
无须应用服务器的支持,也能提供应用服务器的功能,如声明式事务等。
Spring 致力于 J2EE 应用的各层的解决方案,而不是仅仅专注于某一层的方案。可以说 Spring 是企业应用
开发的“一站式”选择,并贯穿表现层、业务层及持久层。然而,Spring 并不想取代那些已有的框架,而与
它们无缝地整合。
Spring 是一个开源框架,它由 Rod Johnson 创建。它是为了解决企业应用开发的复杂性而创建的。Spring
使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情。然而,Spring 的用途不仅限于服务器端的开
发。从简单性、可测试性和松耦合的角度而言,任何 Java 应用都可以从 Spring 中受益。
◆目的:解决企业应用开发的复杂性
◆功能:使用基本的 JavaBean 代替 EJB,并提供了更多的企业应用功能
◆范围:任何 Java 应用
简单来说,Spring 是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
◆轻量——从大小与开销两方面而言 Spring 都是轻量的。完整的 Spring 框架可以在一个大小只有 1MB 多
的 JAR 文件里发布。并且 Spring 所需的处理开销也是微不足道的。此外,Spring 是非侵入式的:典型地,
Spring 应用中的对象不依赖于 Spring 的特定类。
◆控制反转——Spring 通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了 IoC,一个对象依赖
的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为 IoC 与
JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。
◆面向切面——Spring 提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例
评论0
最新资源