原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/6715063.html
1、回顾
之前的两篇分别解析了类型别名注册器和类型处理器注册器,此二者皆是解析XML映射文件中参数类型与返回结果类型的基础,别名注册器用于通过别名找到对应的类类型,类型处理器注册器则用于通过类类型来找到对应了类型处理器与数据库类型,以此来完成进出数据库数据与java之间类型的转换。
我们在类型处理器注册器一篇中已经简单介绍了类型处理器,那就是用于java类型与数据库类型之间进行映射处理的工具类,这一篇中要详细解析一下MyBatis中的类型处理器。
2、类型处理器
2.1 类架构
从上面的图中可以看出MyBatis中整个类型处理器实现架构,TypeHandler接口定义了类型处理器,而TypeReference抽象类则定义了一个类型引用,用于引用一个泛型类型(此处很抽象,不好理解,详见后续解析),BaseTypeHandler则是类型处理器的基础,是所有类型处理器的公共模块,几乎所有的类型处理器都是通过直接继承BaseTypeHandler来实现的。
延伸阅读
- ssh框架 2016-09-30
- 阿里移动安全 [无线安全]玩转无线电——不安全的蓝牙锁 2017-07-26
- 消息队列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 论文笔记【图片目标分割】 2017-07-26
- 词向量-LRWE模型-更好地识别反义词同义词 2017-07-26
- 从栈不平衡问题 理解 calling convention 2017-07-26
- php imagemagick 处理 图片剪切、压缩、合并、插入文本、背景色透明 2017-07-26
- Swift实现JSON转Model - HandyJSON使用讲解 2017-07-26
- 阿里移动安全 Android端恶意锁屏勒索应用分析 2017-07-26
- 集合结合数据结构来看看(二) 2017-07-26