1、定义Bean
Bean定义包括的内容如下:
全限定类名:通常是Bean的真正实现类,但是如果一个Bean使用一个静态工厂方法创建,而不是由普通的构造方法创建,那么这实际上就是工厂类的全限定名
Bean行为配置元素:声明这个Bean在容器中的行为方式,例如:prototype或singleton,自动装配模式、依赖模式检查、初始化和析构方法;
构造方法的参数和新创建Bean需要的属性:例如一个管理连接池的Bean使用的连接数目或者池的其他大小限制,既可以指定为一个属性,也可以作为一个构造方法参数;
和这个Bean工作相关的其他Bean:例如他的协作者,这个也叫做依赖;
特性 | 说明 |
---|---|
class | Bean的类 |
id和name | Bean的标识符,id和name |
singleton或prototype | Singleton的是否使用 |
构造函数方法 | 设置bean的属性和协作者 |
bean的属性 | 设置bean的属性和协作者 |
自动装配模式 | 自动装配协作对象 |
依赖检查模式 | 依赖检查 |
初始化模式 | 生命周期接口 |
析构方法 | 生命周期接口 |
2、初始化Bean
在Bean实例化之前设定某些参数,有两种方式:在配置文件中指定init-method属性和bean实现initializingBean接口;
3、调用Bean
调用Bean有三种方式:BeanFactory和ApplicationContext方式及BeanWrapper方式。BeanWrapper要求相应的Bean具有设置注入的setter方法,否则将不能使用BeanWraper的setPropertyValue()方法进行初始化。
Test test = new Test();
BeanWrapper bw = new BeanWrapperImpl(test);
bw.setPropertyValue("msg","hello");
bw.setPropertyValue("startDate",new Date());
test.toString();
4、销毁Bean
使用配置文件中destrop-method属性:
在销毁Bean是,Spring将自动调用指定的销毁方法;
实现DisposableBean接口:
在Bean中实现DisposableBean接口的同事,必须实现该接口的destroy方法。