从数据库查询得到的枚举数据列,int转成对应的枚举字段

枚举类型

public enum Emotion{
未分析,正面,中立,负面
}



这里使用的是MiniDao


@MiniDao("emotionMiniDao")
public interface EmotionMiniDao {

@Sql("SELECT CONCAT(emotion) `name`,COUNT(*) ` value` FROM  table_name  GROUP BY emotion")
List>  test();

}

注:CONCAT(emotion)   sql语句把int 类型转换成varchar类型  不然会报java.lang.Integer cannot be cast to java.lang.String


for (Map map : list) {   //list是返回的MiniDao返回的List
for (String key : map.keySet()) {
if (key.equals("name")) {
int value = Integer.parseInt(map.get(key).toString());
String data = Emotion.values()[value].toString();
map.put(key, data);
}
}
}

你可能感兴趣的:(从数据库查询得到的枚举数据列,int转成对应的枚举字段)