我想以尽可能最短的方式在spring xml上下文中声明一个String类型的bean。到目前为止,这是我发现的最短路径
<bean id="bean1" class="java.lang.String">blah blah </bean>
<bean id="bean2" class="java.lang.String">blah blah </bean>
<bean id="bean3" class="java.lang.String">blah blah </bean>
但是,为了便于阅读,我想整齐地“叠加”这些,有点像这样,我不能只是因为关于行代码长度的团队标准而将所有代码放在一行上:
1x
答案 0 :(得分:3)
为了便于阅读,我仍然希望将它全部保存在上下文文件中,并且我可以将上下文文件单独重新部署到类路径,而无需重新部署整个.jar
如果您想将所有内容保存在上下文文件中并希望简化它,那么您应该使用PropertyPlaceholderConfigurer
而不是String
bean。
这是一个例子,
project.properties
。将所有Strings
放在该文件中作为{key=value}
对。例如,
myStrings.cnst1=FOO
myStrings.cnst2=BAR
myStrings.cnst3=FOOBAR
现在,在您的上下文文件中声明PropertyPlaceholderConfigurer
,如下所示:
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>project.properties</value>
</property>
现在,您可以按如下方式轻松访问这些值:
@Value("${myStrings.cnst1}")
private String someString;