- 1、本文档共516页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.1 Spring简介
1.2 IoC容器
1.3 Spring IoC容器;1.1 Spring简介;Spring是一个开源框架,它由Rod Johnson创建。Spring诞生之初是为了解决企业应用软件开发日益复杂的难题。Spring创建的初衷如下:
(1) ?J2EE应该更加简单。
(2) 使用接口而不是使用类,是更好的编程习惯。
(3) 为JavaBean提供了一个更好的应用配置框架。
(4) 更多地强调面向对象的设计,而不是现行的技术。
(5) 尽量减少不必要的异常捕捉。
(6) 使应用程序更加容易测试。
Spring框架目标:
(1) 可以令人方便愉快地使用Spring。
(2) 应用程序代码并??依赖于Spring API。
(3) ?Spring不是和现有的解决方案竞争,而是致力于与现有解决方案融合在一起。;1.1.1 Spring历史
Spring自从2003年发布以来,一直是Java开源框架的奇迹之一。Spring从2004年3月到现在,已经发布了1.0、1.1、1.2、2.0、2.5、3.0、4.0等几个主要版本,目前发布的版本增加了许多特性,比如Spring表达式语言、IoC增强、声明模型验证、更多的注解支持和嵌入式数据库支持等。
1.1.2 Spring项目简介
围绕着Spring框架本身,有许多优秀的项目,此处只对Spring的常用项目进行简单介绍。
(1) ?Spring Framework(Core):整个Spring项目的核心。
(2) ?Spring Web Flow:定义了一种特定的语言来描述工作流,且其高级的工作流控制器引擎可以管理会话状态,支持AJAX来构建丰富的客户端体验,还能对JSF提供支持。
(3) ?Spring Security:广泛使用的基于Spring的认证和安全工具。
(4) ?Spring Dynamic Modules:可以让Spring应用运行在OSGi平台上。
(5) ?Spring Batch:提供构建批处理应用和自动化操作的框架。
;(6) ?Spring Android:为Android终端开发应用提供Spring支持,并提供了一个基于Jave的在Android应用环境中工作的REST客户端。
(7) ?Spring Mobile:是基于Spring MVC构建的,可为移动终端的服务器应用开发提供支持。
(8) ?Spring Social:Spring框架的扩展,可以帮助Spring应用更方便地使用SNS(Social Network Service)。
所有基于Spring的项目都是以Spring Framework为基础开发出来的。事实上,Spring Framework也是Spring体系的核心。作为平台,Spring将许多应用开发中遇到的共性问题进行了抽象;同时,作为一个轻量级的应用开发框架,Spring和传统的J2EE开发相比,有其自身特点。通过这些自身特点,Spring充分体现了它的设计理念:支持POJO和使用JavaBean的开发方式、面向接口开发、支持OO(面向对象)的设计方法。
;到目前为止,Spring Framework一共包含大约20个模块,这些模块大多集中在Core Container、Data Access/Integration、Web、AOP、Instrumentation和Test部分。图1-1描述了Spring Framework模块的结构。;以下是部分Spring Framework模块的具体作用。
1. ?Core Container
Core Container部分主要包含Beans、Core、Context和Expression Language等模块。
(1) ?Beans和Core模块:框架的基础部分,提供依赖注入和IoC(控制反转)特性。
(2) ?Context模块:构建于Beans和Core模块基础之上,提供了一种类似于JNDI注册器的框架式对象访问方法。
(3) ?Expression Language模块:提供了一个强大的表达式语言,可以在运行时查询和操纵对象。
2. ?Data Access/Integration
Data Access/Integration部分包含JDBC、ORM、OXM、JMS和Transaction等模块。
(1) ?JDBC模块:提供了一个JDBC抽象层,可以消除冗长的JDBC编码和解析数据库厂商特有的错误代码。
(2) ?ORM模块:为流行的对象/关系映射API——JPA、JDO、Hibernate、iBatis等提供了一个交互层。
(3) ?OXM模块:提供了一个对Object/XML映射实现的抽象层。
(4) ?JMS(Java Messaging Ser
文档评论(0)