我的应用程序上下文中有20个bean,我想在加载所有bean之后加载一个特定的bean。有办法吗?
答案 0 :(得分:1)
您可以使用depends-on强制bean初始化顺序。
例如,如果bean1
取决于bean2
和bean3
,您可以将:
<bean id="bean1" class="YourBean" depends-on="bean2,bean3">
在春天的背景下。
答案 1 :(得分:0)
正如@skaffman所说,这是一个非常奇怪的要求。根据您的需求,有更好的解决方案:
如果您只需要在初始化Spring上下文时启动进程,请不要使用@PostConstruct带注释的方法(或InitializingBean)。 ApplicationListener可能就是你所需要的。
如果您担心因为需要在@PostConstruct注释方法中注入一些bean,请不要理会:Spring通常足够智能来解决此类依赖关系。如果不是你的情况,也许你有一个过于复杂的bean设计。
如果这还不够,您可以按照@soulcheck说明进行操作。 This answer可能会帮助您获得更清晰的配置文件。
如果这对您没有帮助,请向我们提供一些有关您想要实现的目标的更多信息。