0

在 spring 的 XML 文件中,我们有两个 id 不同但类相同的 bean。它们具有相同的属性。现在我有 InitializingBean 接口,并且在afterPropertySet()中我只是打印属性的值。

它为我打印两次值?

4

2 回答 2

0

根据Spring 文档

后属性集()

在设置所有提供的 bean 属性(并满足 BeanFactoryAware 和 ApplicationContextAware)后由 BeanFactory 调用。

所以你的问题的简短回答是:是的

Spring 不操作类或对象。Spring 操作Bean Entity。它是 Spring IOC 操作的最简单的对象。Bean 有 Spring 引入的额外行为规则。

例如,如果您使用 Singleton 范围创建两个 bean 而不是 Lazy 初始化,则 Spring 会创建您的类的两个实例。

于 2013-01-27T12:02:52.340 回答
0

可能您正在调用这个类,同时调用一个测试或像这样启动一个集成测试。检查断点,如果您使用的是 SpringRunner,请尝试模拟组件

于 2019-10-18T15:34:13.517 回答