hop*_*hop 20 spring inversion-of-control javabeans
在Spring IOC中有两个定义的bean(具有相同的名称和类)有效吗?
我有两个包含在web.xml中的bean定义文件.请参阅下面的示例.
的applicationContext-beans1.xml
<bean name="myWao"
class="com.beans.myBean">
</bean>
Run Code Online (Sandbox Code Playgroud)
的applicationContext-beans2.xml
<bean name="myWao"
class="com.beans.myBean">
</bean>
Run Code Online (Sandbox Code Playgroud)
到目前为止我没有遇到任何问题.但是,这可能会影响多线程和群集的真实环境吗?
注意:两个XML都被加载,因为我能够使用两个XML中定义的其他bean(只有一次)
Bri*_*new 39
它是有效的,但你会发现另一个bean会覆盖一个bean.你会在日志中看到这个
Overriding bean definition for...
Run Code Online (Sandbox Code Playgroud)
此行为允许您覆盖以前提供的bean定义.它会影响应用程序的静态程序集,并且与您的问题中建议的线程/群集无关.
请注意,DefaultListableBeanFactory允许您通过setAllowBeanDefinitionOverriding()配置此行为
RP-*_*RP- 10
这是有用且有用的,尤其是当您尝试更改第三方bean的实现时(我的意思是,您不允许更改bean的实现)以及您需要提供/配置一些额外(合并)属性的位置豆子.
覆盖bean取决于您提供的用于构建ApplicationContextthrough web.xml或独立的xmls的顺序.最新的bean定义将赢得比赛.
| 归档时间: |
|
| 查看次数: |
37174 次 |
| 最近记录: |