枚举是JDK1.5开始的新特性,非常好用。当在数据明确而且多选一的情况下,使用枚举,程序性能非常好,容易开发和维护
public enum Vegetable {
A{//可以用更近形式化的名称,但这里为了接省数据库空间
public String getDesc(){
return "东瓜";
}
},
B{
public String getDesc(){
return "南瓜";
}
},
C{
public String getDesc(){
return "西瓜";
}
},
D{
public String getDesc(){
return "苹果";
}
},
E{
public String getDesc(){
return "辣椒";
}
},
F{
public String getDesc(){
return "西瓜";
}
};
public abstract String getDesc();
public String getName(){
return this.name();
}
}
在实体中使用枚举
@Enumerated(EnumType.STRING)
@Column(length=1,nullable=false)
private Vegetable vegetable;
//这样,枚举中的A,B,C...会被映射到数据库,而当从数据库取出,又会被还原成枚举类型。所以不需要外表。
使用select下拉列表来装载枚举