我正在使用 spring,并且有一个需要配置大量 bean 的要求。例如:
<bean name="PC_Name" class="com.stack.Exchange">
<property name="firstName" value="jack"/>
<property name="lastName" value="nicolas"/>
</bean>
<bean name="Mobile_Name" class="com.stack.Exchange">
<property name="firstName" value="jack"/>
<property name="lastName" value="nicolas"/>
</bean>
现在,就像在上面的两个 bean 中一样,我使用相同的属性和相同的值。 有没有办法将这些属性写入公共(public)标记并将其注入(inject)到上面的 bean 中。像这样的东西:
<bean name="PC_Name" class"com.stack.Exchange">
<properties name="nameReference"/>
</bean>
<bean name="Mobile_Name" class"com.stack.Exchange">
<properties name="nameReference"/>
</bean>
<properties name="nameReference">
<property name="firstName" value="jack"/>
<property name="lastName" value="nicolas"/>
</properties>
我知道这可以通过使用firstName和lastName变量定义另一个类并将该类注入(inject)所需的bean来实现。 但我不想更改已经在 com.stack.Exchange 类中编写的代码。
谢谢 镍丁
最佳答案
您可以创建 Bean 定义模板。在此 bean 中,您必须声明一个值为 true 的属性“abstract”。您不应在其中指定类属性。
<bean id="beanTemplate" abstract="true">
<property name="firstName" value="jack"/>
<property name="lastName" value="nicolas"/>
</bean>
<bean name="PC_Name" class"com.stack.Exchange" parent="beanTemplate">
</bean>
<bean name="Mobile_Name" class"com.stack.Exchange" parent="beanTemplate">
</bean>
关于java - 引用 spring bean 中的一组属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28065434/