我有一个枚举类型[code="java"]public enum Sex{MALE,FEMALE}[/code]
然后在实体类中用到这个枚举类,[code="java"]
@Enumerated(value = EnumType.ORDINAL)
public Sex getSex(){ return sex; }
[/code]
在数据表中存的sex字段值为1(1:男 2:女), 我在查询时抛出异常
java.lang.IllegalArgumentException: Unknown name value for enum class com.test.Sex: 1
请问下我应该怎样配置才能将数据库中的1 转换为枚举的MALE啊?
请确定您所使用的JDK版本是否是5.0或以上
另外,枚举值起始值为0,如果只有两个值的话,应该是0和1才对,没有1和2的说法
然后sex字段类型是什么?如果以数字存储于数据库中,一般用int,或boolean类型
public enum Sex {
MALE("1"),
FEMALE("2");
private String sex;
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
private Sex(String i){
this.sex=i;
}
@Override
public String toString()
{
return this.sex;
}
}
public class Main {
public static void main(String[] args) {
System.out.println(Sex.FEMALE);
}
}