春天的全球物业

Kev*_*vin 9 spring

是否可以在spring上下文文件中定义,以及可以在<bean>元素中访问的一个或多个属性.

下面的例子说明了我最需要的东西 - 我想要定义属性FOO一次,然后在我的各种<bean>定义中多次引用它:

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="
      http://www.springframework.org/schema/beans
      http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
  <properties>
    <property name="FOO" value="BAR">
  </properties>

  <bean name="TEST" class="mytest">
    <property name="MYFOO" value="${FOO}"/>
  </bean>
  <bean name="TEST1" class="mytest1">
    <property name="MYFOO" value="${FOO}"/>
  </bean>

</beans>
Run Code Online (Sandbox Code Playgroud)

任何输入都将非常感激.
谢谢,凯文.

ska*_*man 9

您可以使用快照命名来执行此操作PropertyPlaceHolderConfigurer.见这里的春天文档的例子.您没有在spring beans文件中定义属性值本身,而是将它们外部化为.properties文件.

我怀疑,您可以使用PropertyPlaceHolderConfigurer其中一个兄弟姐妹来注入PropertiesSpring文件中定义的对象,但这将是一个相当冗长的解决方案.