如何将空值或未知值映射到java中的enum
。我正在使用Ormlite。
@DatabaseField(canBeNull=false, columnName=COLUMN_NAME_DEVICE_TYPE,
dataType=DataType.ENUM_STRING)
private DeviceType deviceType;
这是我的枚举
public enum DeviceType {
iPhone, iPad, Android,
OSX, Windows, Windows8,
WP7, WP8, Blackberry,
Browser, Facebook, Unknown;
@JsonCreator
public static DeviceType parse(String s) {
for (DeviceType t : values()) {
if (t.name().toLowerCase().equals(s)) {
return t;
}
}
return Unknown;
}
@JsonValue
@Override
public String toString() {
return name().toLowerCase();
}
}
我总是遇到以下异常:
引起:java.sql.SQLException:无法为字段FieldType获取''的枚举值:name = deviceType,class = MyEntity
答案 0 :(得分:0)
查看数据库中的数据。我猜这行有空字符串'',没有枚举。