首先,Bean的概念需要清晰:
Bean是一种符合一定要求的Java类
1 有默认的构造函数
2 对于私有属性,有setter和getter
满足了上述的条件,在工程中就可以在XML文件中定义类的实例。一开始我不是很理解,为什么要在XML中去定义实例,而不是正正常常的代码中创建。后来看了一些资料,敲了一些sample代码,看了一下《Spring实战》,或多或少有一点理解。在实际变成中,我们需要实现多态,主要用到继承和接口。一般开发中提倡“面向接口编程”,从而降低代码的藕合度。所以Spring的思想中,把类的实例化抽取出来,而代码中只需要做核心的逻辑实现。类的实例化在Spring里面称为wiring(装配)或者inject(注入)。咋一看,装配这个词十分唬人,实际上就是把类实例化,然后把一些参数“塞”到这个对象里面,同时把这个对象和别的对象的依赖关系一并搞清楚,如谁是谁的私有属性之类的。
通过学习,我个人归纳了一下Spring里面所谓的“依赖注入”的几种方式。
1 完全通过XML文件装配
2 用Annotation自动装配
3 用Java装配
4 还有一些不伦不类的,介于使用XML和使用Annotation之间的做法,不提倡
第一步,配置XML文件
首先,无论用何种方式装配,都至少需要一个XML文件,做一些基础的调起启动
新建一个XML文件,样式如下
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
">