關於在spring 容器初始化 bean 和銷燬前所做的操作定義方式有三種:
第一種:通過@PostConstruct 和 @PreDestroy 方法 實現初始化和銷燬bean之前進行的操作
第二種是:通過 在xml中定義init-method 和 destory-method方法
第三種是: 通過bean實現InitializingBean和 DisposableBean接口
例如:init-method 提前往Map存值
depends-on用來表示一個Bean的實例化依靠另一個Bean先實例化。如果在一個bean A上定義了depend-on B那麼就表示:A 實例化前先實例化 B。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
<bean name="dao" class="research.spring.beanfactory.ch3.Dao" depends-on="database" >
</bean>
<bean id="database" class="research.spring.beanfactory.ch3.Database">
</bean>
</beans>
<ref bean=""/> 是尋找全局中的 bean; <ref local=""/> 是尋找本 xml 文件中的 bean ,parent: 用於指定其依賴的父 JavaBean 定義。
<ref object="MyValueObject"/> 等同於 value-ref