Java 声明一行字符串类型的Springbean

Java 声明一行字符串类型的Springbean,java,spring,Java,Spring,我想以最短的方式在SpringXML上下文中声明字符串类型的bean。到目前为止,这是我找到的最短的路 <bean id="bean1" class="java.lang.String"> <constructor-arg type="String" value="someword" /> </bean> 但是,为了可读性,我希望将这些代码整齐地“堆叠”成多行,有点像这样,而且我不能将所有代码放在一行上,因为团队关于行代码长度的标准: &

我想以最短的方式在SpringXML上下文中声明字符串类型的bean。到目前为止,这是我找到的最短的路

<bean id="bean1" class="java.lang.String">
        <constructor-arg type="String" value="someword" />
</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>
废话
废话
废话
为了可读性,我仍然希望将其全部保存在上下文文件中,并且我可以将上下文文件单独重新部署到类路径,而不必重新部署整个.jar

如果希望将所有内容保留在上下文文件中并简化它,那么应该使用
propertyplaceholderconfigure
而不是
String
bean

举个例子,

  • 创建名为
    project.properties
    的属性文件
  • 将所有
    字符串作为
    {key=value}
    对放入该文件中。比如说,

    myStrings.cnst1=FOO
    myStrings.cnst2=BAR
    myStrings.cnst3=FOOBAR
    
  • 现在,在上下文文件中声明一个
    PropertyPlaceHolderConfigure
    ,如下所示:

    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="location">
        <value>project.properties</value>
    </property>
    
    @Value("${myStrings.cnst1}")
    private String someString;
    

  • 有关更多信息,请参阅和。

    我可以知道创建
    String
    class的bean的原因吗?将在整个上下文中的许多位置被引用,因此希望能够从一个位置维护它。您应该创建一个接口或
    final
    类,并将所有这些字符串放在那里。你可以很容易地在整个项目中引用它。本质上是一类常量,并通过SpEL引用它?为了可读性,我仍然希望将其全部保存在上下文文件中,并且我可以将上下文文件单独重新部署到类路径,而不必重新部署整个.jar。