您的位置:首页 > 编程语言 > Java开发

博为峰JavaEE技术文章 ——MyBatis 在映射中使用枚举类型

2017-03-19 17:53 239 查看


设计数据库时,有时为了方便,我们会把某些字段设置为字典类型。比如用户性别,用1表示男性,2表示女性,3表示保密。但是在Java bean中,我又希望这些字典能够自动与枚举类型对应上,或者说转化为枚举对象。

小博老师今天就跟大家介绍下Mybatis中如何实现数据库字典与枚举类型的转换。

如上,我们假设User表中的gendar字段定义为了1/2/3分别表示男/女/保密。那么先设计一个与之对应的枚举类,代码如下:



getGendarByCode方法是通过性别的值(字典代码)获取枚举对象。

User Java Bean源代码如下:



性别属性类型设置为GendarEnum,也就是前面定义的枚举类型

接下来我们要定义一个TypeHandler,把数据库字典与枚举对象对应上,代码如下:



我们还要在Mapper xml中配置User属性GendarEnum的TypeHandler:



运行如下的测试案例,即可打印出性别的名称:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java Mybatis Enum