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

来源:互联网 发布:js判断ios系统版本 编辑:程序博客网 时间:2024/05/29 04:01

枚举类型

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



这里使用的是MiniDao


@MiniDao("emotionMiniDao")
public interface EmotionMiniDao {

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

}

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


for (Map<String, String> map : list) {   //list是返回的MiniDao返回的List<Map<String, String>> 
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);
}
}
}

原创粉丝点击