From《Mybatis从入门到精通》

1.笔记:

    <!--
        6.3 使用枚举或者其他对象

        6.3.1 使用MyBatis提供的枚举处理器

            不懂:
                因为枚举除了本身的字面值外,还可以通过枚举的ordinal()方法获取枚举值的
                索引。在这个枚举类中,disabled对应索引为0,enabled对应的索引为1.

            MyBatis在处理Java类型和数据库类型时,使用TypeHandler(类型处理器),对这
            两者进行转换。MyBatis为Java和数据库JDBC中的基本类型和常用的类型提供了
            TypeHandler接口实现。MyBatis在启动时会加载所有的JDBC对应的类型处理器,这个
            处理器会将枚举类型转换为字符串类型的字面值并使用。对于Enabled而言,便是disabled和
            enabled字符串。

            也就是说默认的org.apache.ibatis.type.EnumTypeHandler,这个处理器只对枚举
            的字面值进行处理,也就是数据库中需要存放着字符串,这样才能够转化成相应的枚举类型
            所以不适合当前的情况。MyBatis还提供了org.apache.ibatis.type.EnumOrdinalTypeHandler
            处理器,这个处理器使用枚举的索引值进行出来,可以解决此处遇到的问题。要使用
            这个处理器,需要在mybatis-config.xml中进行配置:
                <typeHandlers>
                    <typeHanderl
                        javaType="tk.mybatis.simple.type.Enabled"
                        hadler="org.apache.ibatis.type.EnumOrdinalTypeHandler"/>
                </typeHandlers>
    -->

2.增加的枚举类型:

package tk.mybatis.simple.type;

public enum Enabled {
    disabled,//禁用
    enabled; //启用
}

3.对MyBatis配置文件的配置

<typeHandlers>
  <typeHanderl
    javaType="tk.mybatis.simple.type.Enabled"
    hadler="org.apache.ibatis.type.EnumOrdinalTypeHandler"/>
</typeHandlers>

1.笔记:

    <!--
        6.3.2 使用过自定义的类型处理器
            ——Java枚举类型,我感觉我还是需要看一下,
            里面有很多东西,一下子理解不了

         ——标记一下,这部分我没有细细的研究。
    -->

MyBatis 使用枚举或其他对象的更多相关文章

  1. MyBatis从入门到精通(第6章):6.3 使用枚举或其他对象

    6.3 使用枚举或其他对象 在 sys_role 表中存在一个字段 enabled,这个字段只有两个可选值,0 为禁用,1 为启用.但是在 SysRole 类中,我们使用的是 Integer enab ...

  2. 解决mybatis使用枚举的转换

    解决mybatis使用枚举的转换 >>>>>>>>>>>>>>>>>>>>> ...

  3. mybatis的两个核心对象SqlSessionFactory和SqlSession对象

    mybatis的两个核心对象SqlSessionFactory和SqlSession对象 参见:https://www.cnblogs.com/wxdestiny/p/9743686.html

  4. Win64 驱动内核编程-33.枚举与删除对象回调

    转载:http://www.voidcn.com/article/p-wulgeluy-bao.html 枚举与删除对象回调 对象回调存储在对应对象结构体里,简单来说,就是存储在 ObjectType ...

  5. Java 基础 enum枚举类 的创建/使用/接口继承 ,以及手动创建枚举类的对象为:public static final

    笔记: import java.lang.*; /**一:枚举类 : enum Season implements info { s1(),s2(),s3(),s4() }; //s1--s4 放在S ...

  6. MyBatis的2个核心对象:SqlSessionFactory、SqlSession

    SqlSessionFactory SqlSessionFactory是单个数据库映射关系经过编译后的内存镜像,主要作用是创建SqlSession. InputStream inputStream = ...

  7. mybatis 处理枚举类型

    MyBatis支持持久化enum类型属性.假设t_user表中有一列gender(性别)类型为 varchar2(10),存储 MALE 或者 FEMALE 两种值.并且,User对象有一个enum类 ...

  8. [Effective JavaScript 笔记]第48条:避免在枚举期间修改对象

    注册列表示例 一个社交网络有一组成员,每个成员有一个存储其朋友信息的注册列表. function Member(name){ this.name=name; this.friends=[]; } va ...

  9. Mybatis的基本要素--核心对象

    大家好啊,今天呢来说下Mybatis的核心对象,也就是说基本三要素. >核心接口和类. >Mybatis核心配置文件(mybatis-config.xml) >SQL映射文件 一.下 ...

随机推荐

  1. 第一个kotlin程序

    class ccc { companion object { @JvmStatic fun main(args: Array<String>) { println("hello! ...

  2. Android零基础入门第44节:ListView数据动态更新

    原文:Android零基础入门第44节:ListView数据动态更新 经过前面几期的学习,关于ListView的一些基本用法大概学的差不多了,但是你可能发现了,所有ListView里面要填充的数据都是 ...

  3. CRS-2800: Cannot start resource 'ora.asm' as it is already in the INTERMEDIATE state on server ‘RAC02’

    在安装ORACLE RAC的Grid Infrastructure时,在节点1运行/u01/app/11.2.0/grid/root.sh正常,当在节点2运行/u01/app/11.2.0/grid/ ...

  4. Android零基础入门第84节:引入Fragment原来是这么回事

    随着大众生活水平的提高,再加上移动互联网的迅速发展,几乎每个人都至少拥有一台搭载Android系统的移动设备.Android设备的多样性给我们带来了很大的便捷,各Android设备拥有不同分辨率和不同 ...

  5. jQuery ui autocomplete选择列表被Bootstrap模态窗遮挡的完美解决方法

    转:http://www.cnblogs.com/wiseant/p/4553837.html 最近在一个ASP.NET MVC5项目中使用Bootstrap的模态窗(弹出层)来让用户填写内容,其中的 ...

  6. 简单封装 Delphi 的 DirectX类

    var CreatorRenderer  : TCreatorRenderer; Form1: TForm1; 窗体代码: {$R *.dfm} procedure TForm1.FormCreate ...

  7. 30211Java_类

    类 类:我们叫做class. 对象:叫做Object,instance(实例).某个类的对象,某个类的实例.是一样的意思.1.对象是具体的事物;类是对对象的抽象;2.类可以看成一类对象的模板,对象可以 ...

  8. 30212Java_数组

    数组 1.综述 数组是相同类型数据的有序集合.数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成. 其中,每一个数据称作一个元素,每个元素可以通过一个索引(下标)来访问它们. 数组的三个 ...

  9. vue.js异步上传文件前后端代码

    上传文件前端代码如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type&q ...

  10. 球体的双目视觉定位(matlab,附代码)

    球体的双目视觉定位(matlab,附代码) 标签(空格分隔): 机器视觉 引言 双目视觉定位是我们的一个课程设计,最近刚做完,拿出来与大家分享一下,实验的目的是在拍摄的照片中识别球体,并求出该球体到相 ...