代码之家  ›  专栏  ›  技术社区  ›  Shamik

如何使用Spring获取枚举的值

  •  6
  • Shamik  · 技术社区  · 14 年前
    <bean id="xyz" class="com.abc" >
      <property name="name">
        <bean         
                class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean">
            <property name="staticField" value="com.abc.staticname" />
         </bean>
       </property>
    </bean>
    

    2 回复  |  直到 13 年前
        1
  •  7
  •   reevesy onejigtwojig    12 年前

    我不明白你为什么不能继续使用 FieldRetrievingFactoryBean ,这就是它的用途。

    不过,这比你的示例所建议的要容易一点。另外,还有一种更简单的基于模式的语法,它可以做同样的事情, <util:constant>

    两种方法都有记录(并进行比较) here .

    (请记住,枚举值只是枚举类上的静态字段)

        2
  •  2
  •   Betlista    13 年前

    您只需使用枚举名作为值,Spring将自动检测它是枚举类型的静态字段并使用它。因此,例如,如果有一个枚举com.mycompany.MyEnum,其值为SOMEVAL,另一个值,则可以使用:

    <property name="myEnumProperty" value="SOMEVAL" />
    

    这将允许您避免FieldRetrievingFactoryBean和 <util:constant>