我有一些复杂的 spring 上下文,我想确保 bean 将按特定顺序初始化。
-+ module 1
++ root-context.xml
+- LocalSessionFactoryBean
-+ module 2
++ additional-context.xml
+- MyHijackingBean
之前,模块 1
依赖于模块 2
。 LocalSessionFactoryBean
定义为:
<bean class="org.s.o.LocalSessionFactoryBean" depends-on="MyHijackingBean">
效果很好。 MyHijackingBean
在创建 LocalSessionFactoryBean
之前使用 @PostConstruct
进行初始化。
但现在我已经颠倒了依赖关系 - 模块 2
依赖于模块 1
。因此 module 1
对 MyHijackingBean
我可以以某种方式反转depends-on
吗?我尝试使用 BeanPostProcessor,但是我无法控制初始化的顺序。
Spring 版本 - 3.2
最佳答案
您可以使用BeanFactoryPostProcessor
将depends-on
添加到LocalSessionFactoryBean。
关于java - Spring:确保初始化顺序没有 'depends-on',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28813117/