Spring 是否可以在applicationcontext中设置资源属性值?
在applicationcontext.xml中,是否可以设置一个可在以后的SPEL表达式中使用的值 例如,有没有办法做到这一点Spring 是否可以在applicationcontext中设置资源属性值?,spring,applicationcontext,Spring,Applicationcontext,在applicationcontext.xml中,是否可以设置一个可在以后的SPEL表达式中使用的值 例如,有没有办法做到这一点 <setProperty name="foo" value="someval" /> <bean id="beanId" name="beanName" class="SomeClass"> <property name="someVal" value="blah_${foo}"/> </bean> 我
<setProperty name="foo" value="someval" />
<bean id="beanId" name="beanName" class="SomeClass">
<property name="someVal" value="blah_${foo}"/>
</bean>
我想这样做的实际原因是,我使用语句创建实体管理器,这些管理器在许多不同的应用程序上下文中使用。问题在于,实体管理器需要一个唯一的名称,Bitronix使用该名称创建一个本地文件,如果多个单元测试同时使用该字段的相同名称运行,该文件将中断。为了设置唯一的名称,我目前为每个应用程序上下文设置了一个单独的属性文件,并将其导入以从中获取唯一的名称
与其胡说八道,我宁愿这样做:
<setProperty name="uniqueName" value="someUniqueName" />
<import resource="classpath*:shared/db/fooDb.xml" />
您可以使用Spring el和util名称空间:
<util:properties id="myprops">
<prop key="foo">someval</prop>
</util:properties>
<bean id="beanId" name="beanName" class="SomeClass">
<property name="someVal" value="blah_#{myprops.foo}"/>
</bean>
某地
您可以使用Spring el和util名称空间:
<util:properties id="myprops">
<prop key="foo">someval</prop>
</util:properties>
<bean id="beanId" name="beanName" class="SomeClass">
<property name="someVal" value="blah_#{myprops.foo}"/>
</bean>
某地