我有一个包含这一行的配置文件:
login.mode=PASSWORD
Run Code Online (Sandbox Code Playgroud)
和一个枚举
public enum LoginMode {
PASSWORD, NOT_PASSWORD, OTHER }
Run Code Online (Sandbox Code Playgroud)
还有一个春豆
<bean id="environment" class="a.b.c.Environment" init-method="init">
<property name="loginMode" value="${login.mode}"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
当然还有豆类
public class Environment {
private LoginMode loginMode;
public LoginMode getLoginMode() {
return loginMode;
}
public void setLoginMode(LoginMode loginMode) {
this.loginMode = loginMode;
}
}
Run Code Online (Sandbox Code Playgroud)
如何将配置文件的属性(即String)转换为LoginMode的相应枚举值?
编辑:我知道如何获取字符串输入的枚举值,但问题是另一个:如果我尝试这样:
public class Environment {
private LoginMode loginMode;
public LoginMode getLoginMode() {
return loginMode;
}
public void setLoginMode(String loginMode) {
this.loginMode = LoginMode.valueOf(loginMode);
}
}
Run Code Online (Sandbox Code Playgroud)
spring抱怨getter和setter没有相同的输入和输出类型.
Bean property 'loginMode' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11255 次 |
| 最近记录: |