Enumtype和tharnHandler和EnumOrdinaltype和tharnHandler的区别

前言:mybatis自带两种对枚举类的处理方式,分别为Enumtype和tharnHandler(默认使用)和EnumOrdinaltype和tharnHandler, 可以使用这两种方式插入枚举对象的name值和序号值.但在实际的开发中我们常常希望存储的是枚举类中自定义的一个屬性值(一般是一个int类型的value值),这种情况下我们可以通过以下方式来实现

一: 定义一个通用的泛型枚举接口

三:创建自己的枚举类并实现IntEnum接口

// 该处返回的值即为我们希望在数据库中存储的值

四: 在Mapper.xml文件的插入、查询等操作中对指定的枚举类型字段添加type和tharnHandler处理

}

java.lang.Enum.ordinal()方法返回此枚举常量的序数(其枚举声明中的位置其中初始常量分配的序数为零)。

此方法返回的枚举常量的序数

让我们来编译和运行上面的程序,这将产生以下结果:

}

我想用枚举类来表示用户当湔状态枚举类由 codemsg 组成,但我只想把 code 保存到数据库查询处理,能知道用户当前状态这应该怎么做呢?在 Spring 整合MyBatis 的时候我们有一个MyBatis的配置文件,我们可以用下面的标签样式指定

另外我们需要在Handler上添加注解,指明枚举类(enum)

}

我要回帖

更多关于 type和tharn 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信