0

Ideally, I'd like to have Spring instantiate all the beans from my context config, wire them together as specified, but never call init() on any of them. Is this possible?

Something else that might suit my needs: if there's a hook that runs after wiring but before init() is called on any of the beans.

4

1 回答 1

0

您可以在构造后实现InitializingBean使用afterPropertiesSet或使用@PostConstruct来做某事,但这并不能保证它是在接线之前,但听起来这不是您正在寻找的答案。

无法保证 Spring 将初始化 bean 的顺序,因为它必须找出最佳的初始化顺序来处理循环引用等问题。

真正保证在连接到另一个 bean 之前发生某些事情的唯一方法是在构造函数中执行它。这就是为什么我总是使用构造函数而不是属性/设置器注入。

于 2013-04-18T19:32:41.310 回答