Bean配置项
- Id
- Class:必要的
- Scope
- Constuctor arguments;
- Properties
- Autowiring mode
- Lazy0initialization mode
- Initializatio /destruction method
Bean的作用域
Bean 的生命周期
1. 定义:
2. 初始化:
3. 使用:
4. 销毁:
以上初始化与销毁的定义有三种方法。分别的在对应bean上配置,在bean上默认。实现接口。
方法1:
<span style="font-size:18px;"> <bean id="beanLifeCycle" class="com.tan.lifecycle.BeanLifeCycle"
init-method="init" destroy-method="destroy">
</bean></span>
方法2:
<span style="font-size:18px;"><beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd"
default-init-method="init" default-destroy-method="destroy"
>
<bean id="beanLifeCycle" class="com.tan.lifecycle.BeanLifeCycle">
</bean>
</beans></span>
方法3:
<span style="font-size:18px;">public class BeanLifeCycle implements InitializingBean,DisposableBean{
//DisposableBean实现后重写的方法
public void destroy(){
System.out.println("BeanlifeCycle---------destroy");
}
@Override
//InitializingBean实现后重写的方法
public void afterPropertiesSet() throws Exception {
System.out.println("BeanlifeCycle---------init");
}
}</span>
问题:要是三种方法同时使用时优先级是:方法3>方法1>方法2;与些同是。方法3不会覆盖方法1 方法2,但是方法1会覆盖方法2
Bean 的自动装配
Resources& resourceLoader