最后加载Spring bean

时间:2012-02-08 11:46:27

标签: spring

我的应用程序上下文中有20个bean,我想在加载所有bean之后加载一个特定的bean。有办法吗?

2 个答案:

答案 0 :(得分:1)

您可以使用depends-on强制bean初始化顺序。

例如,如果bean1取决于bean2bean3,您可以将:

<bean id="bean1" class="YourBean" depends-on="bean2,bean3">

在春天的背景下。

答案 1 :(得分:0)

正如@skaffman所说,这是一个非常奇怪的要求。根据您的需求,有更好的解决方案:

  • 如果您只需要在初始化Spring上下文时启动进程,请不要使用@PostConstruct带注释的方法(或InitializingBean)。 ApplicationListener可能就是你所需要的。

  • 如果您担心因为需要在@PostConstruct注释方法中注入一些bean,请不要理会:Spring通常足够智能来解决此类依赖关系。如果不是你的情况,也许你有一个过于复杂的bean设计。

  • 如果这还不够,您可以按照@soulcheck说明进行操作。 This answer可能会帮助您获得更清晰的配置文件。

如果这对您没有帮助,请向我们提供一些有关您想要实现的目标的更多信息。