7.4.3 使用depends
优质
小牛编辑
126浏览
2023-12-01
7.4.3 使用depends-on
如果一个bean是另一个的依赖,通常意味着一个bean被设置为另一个bean的属性。通常,可以在基于XML的配置元数据中通过<ref/>
元素来完成此任务。不过,有时候bean之间的依赖关系没有这么直接;例如,类中的静态初始化块(initializer)(比如数据库驱动的注册)需要先被触发。depends-on
属性可以显式地强制一个或多个bean在使用它们的bean初始化之前被初始化。下面的示例使用depends-on
属性来表示对单一bean的依赖关系:
<bean class="ExampleBean" depends-on="manager"/>
<bean class="ManagerBean" />
要表示对多个bean的依赖,需提供一个bean名称的列表作为depends-on
属性的值,使用逗号、空格和分号作为有效分隔符:
<bean class="ExampleBean" depends-on="manager,accountDao">
<property name="manager" ref="manager" />
</bean>
<bean class="ManagerBean" />
<bean class="x.y.jdbc.JdbcAccountDao" />
bean定义中的
depend-on
属性可以指定初始化时的依赖关系,以及仅在单例Bean的情况下,可以指定相应的销毁时的依赖关系。