hibernate对enum的持久化(使用annotation)
项目中用到了enum作为持久化对象的某个属性类型.我为了方便,就直接在数据库字段设置成varchar类型.数据库是mysql.但是在持久化的时候,hibernate会转换成int类型再存.我是想直接存.比如
public enum BatchJobState { NOT_START, // 未開始 RUNNING, // 運行 FINISHED, // 結束 FAILED // 失敗 }
我是想直接存NOT_START,这类的,但是hibernate就自动转成1,2,3.之类的.
网上查了些方法.无非是两种,一种是自己写UserType.这种方法很麻烦.不说了,我用的方法是第二种,使用annotation.具体的方法是
@Enumerated(EnumType.STRING) private BatchJobState state;// 任务的执行状态
这么一句.搞定.
相关推荐
Airuio 2020-02-12
NoBlueSky 2019-11-17
AlexZhao 2019-11-09
taizuduojie 2019-11-03
liangds 2019-08-02
zhglinux 2019-06-29
paopao00 2019-06-29
囧芝麻 2013-08-22
jerry00 2019-06-28
surpassdream 2012-11-03
hhboyggyy 2010-04-26
两个蝴蝶飞 2010-03-25
jifangege 2019-06-21
尘封飞扬 2009-04-14
ITxiaobaibai 2019-04-07
举 2019-04-02
CloudStrife0 2019-03-12