如果一个 bean 是另一个 bean 的依赖项,这通常意味着一个 bean 被设置为另一个 bean 的属性。通常,您可以通过基于 XML 的配置元数据中的 <ref/>
元素来实现这一点。然而,有时候 bean 之间的依赖关系不那么直接。例如,需要触发类中的静态初始值设定项,例如数据库驱动程序注册。depends-depen 属性可以显式地强制在初始化使用该元素的 bean 之前初始化一个或多个 bean。以下示例使用 depends-on 属性表示对单个 bean 的依赖关系:
<bean id="beanOne" class="ExampleBean" depends-on="manager"/>
<bean id="manager" class="ManagerBean" />
简单说:beanOne 必须在 manager 初始化后再进行初始化;
多个的话,使用 逗号、空格、分号来进行
<bean id="beanOne" class="ExampleBean" depends-on="manager,accountDao">
<property name="manager" ref="manager" />
</bean>
<bean id="manager" class="ManagerBean" />
<bean id="accountDao" class="x.y.jdbc.JdbcAccountDao" />
:::tips depends-on 可以指定初始化的依赖项,在销毁时也可以指定依赖项,表示依赖的被销毁后,自己才销毁 :::