**
前言
Spring框架正在成长。它始终与选择相关。Java EE关注于少数几项技术,很大程度上阻碍了更好的替代解决方案出现。当Spring框架出现时,没有多少人还会承认Java EE是当今最佳的架构。
随后Spring被大张旗鼓地推出,因为它寻求简化Java EE。此后其每个版本都引入设计用来简化和实现解决方案的新特性。
从2.0版本之后,Spring框架开始针对多平台。和往常一样,该框架提供了现有平台之上的服务,但是尽可能去除与底层平台的耦合。Java EE仍然是主要的参考点,但是不是唯一的目标。OSGi(一种有前景的模块化架构技术)已经成为SpringSource战略的重要部分。而且,Spring framework在Google App Engine之上运行。引入注解为中心的框架和XML schema,SpringSource已经建立了有效地构造特定问题域模型的框架,实际上创建了领域特定语言(DSL)。
如今建立在Spring框架之上的框架已经出现,支持应用集成、批处理、Flex和Flash集成、GWT、OSGi和许多其他技术。
在更新开创性的《Spring Recipes》的时候,我们很快发现,很长的时间实际上只有一个核心的Spring框架。尽管如此,SpringSource portfolio还是描述了多个框架,每个框架都远比其他产品中的竞争对手强大。本书将很好地带你经历各种框架。如果你不需要这些技术,就没有必要在你的项目中使用或者添加它们。如果你需要,知道它们的存在是很好的事情。
因为Java编程语言是平台独立的,你可以自由地选择任何支持的操作系统。但是,本书的某些示例使用平台相关的路径。在输入示例之前必须将它们转换成你的操作系统的格式。
为了最大限度地利用本书,安装JDK版本1.5或者更高版本。你应该安装一个Java IDE来简化开发。对于本书,样板代码是基于Maven的。如果你运行Eclipse并安装m2Ecliplse插件,可以在Eclipse中打开相同的代码,CLASSPATH和依赖将由Maven元数据填写。
如果你使用Eclipse,可能更喜欢SpringSource的SpringSource工具套件(STS),因为它预先装入在Eclipse中更有效使用Spring框架所需的插件。如果你使用NetBeans或IntelliJ IDEA,就没有特殊的配置要求:它们已经支持Maven。
本书使用Maven是因为Spring框架从版本3.0.3开始,不再带有使用该框架所需的所有依赖。建议的方法是简单地使用Maven(或者Ant和Ivy)这样的工具来处理依赖管理。如果你不熟悉Maven,可以先简单地看看第12章(Spring Roo),那里我们介绍了Spring Roo环境的设置,包括Apache Maven。
目录
**[第1章 Spring简介
1.1 实例化Spring IoC容器](https://yq.aliyun.com/articles/91937)**
1.1.1 问题
1.1.2 解决方案
1.1.3 工作原理
1.2 配置Spring IoC容器中的Bean
1.2.1 问题
1.2.2 解决方案
1.2.3 工作原理
1.3 调用构造程序创建Bean
1.3.1 问题
1.3.2 解决方案
1.3.3 工作原理
1.4 解决构造程序歧义
1.4.1 问题
1.4.2 解决方案
1.4.3 工作原理
1.5 指定Bean引用
1.5.1 问题
1.5.2 解决方案
1.5.3 工作原理
1.6 为集合元素指定数据类型
1.6.1 问题
1.6.2 解决方案
1.6.3 工作原理
1.7 使用Spring的FactoryBean创建Bean
1.7.1 问题
1.7.2 解决方案
1.7.3 工作原理
1.8 使用工厂Bean和Utility Schema定义集合
1.8.1 问题
1.8.2 解决方案
1.8.3 工作原理
1.9 用依赖检查属性
1.9.1 问题
1.9.2 解决方案
1.9.3 工作原理
1.10 用@Required注解检查属性
1.10.1 问题
1.10.2 解决方案
1.10.3 工作原理
1.11 用XML配置自动装配Bean
1.11.1 问题
1.11.2 解决方案
1.11.3 工作原理
1.12 用@Autowired和@Resource自动装配Bean
1.12.1 问题
1.12.2 解决方案
1.12.3 工作原理
1.13 继承Bean配置
1.13.1 问题
1.13.2 解决方案
1.13.3 工作原理
1.14 从Classpath中扫描组件
1.14.1 问题
1.14.2 解决方案
1.14.3 工作原理
1.15 小结