[英]How to use Spring to get the value of an Enum
<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>
这是我之前用来设置类com.abc名称的方法。 现在,这些名字应该来自另一个枚举。 如何访问枚举值以设置我的类com.abc的name属性?
我不明白为什么你不能继续使用FieldRetrievingFactoryBean ,这就是它的用途。
不过,它比你的例子更容易使用。 此外,还有更简单的基于模式的语法,它可以做同样的事情, <util:constant>
。
这两种方法都记录(比较) 在这里 。
(请记住,枚举值只是枚举类中的静态字段)
您可以使用枚举名称作为值,Spring将自动检测它是枚举类型的静态字段并使用它。 因此,例如,如果您的枚举com.mycompany.MyEnum的值为SOMEVAL,ANOTHERVAL,则可以使用:
<property name="myEnumProperty" value="SOMEVAL" />
这将允许您完全避免FieldRetrievingFactoryBean和<util:constant>
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.