Spring xml 文件中引用的 Bean 中的范围冲突



我有一个将 bean 作用域定义为一个原型,它引用另一个作用域为单例的 bean。现在从春天的文档中,我知道

单身 人士

这会将 Bean 定义的范围限定为每个 Spring IoC 容器的单个实例(默认(。

原型

这将单个 Bean 定义的范围限定为具有任意数量的对象实例。

以下是我的代码:

<bean id="employee" class="com.sample.beans.Employee" scope="prototype">
<property name="id" value="1"/>
<property name="name" value="employee_1"/>
<property name="department">
<ref bean="department"/>
</property>
</bean>
<bean id="department" class="com.sample.beans.Department" scope="singleton">
<property name="id" value="1"/>
<property name="name" value="hardware"/> 
</bean>

所以这是否意味着我强迫 Spring 在每次需要时生成一个新的员工 bean 实例,并且每个 IOC 容器的部门 bean 都是单个的。但是在内部,当员工调用部门 bean 时,它是创建一个新的 bean 还是共享之前创建的现有单例 bean。

它应该共享以前的豆部

最新更新