typeHandlers(类型处理器)

无论是 MyBatis 在预处理语句(PreparedStatement)中设置一个参数时,还是从结果集中取出一个值时,都会用类型处理器将获取的值以合适的方式转换成 Java 类型。下表描述了一些默认的类型处理器。


类型处理器


Java 类型


JDBC 类型


BooleanTypeHandler


java.lang.Boolean, boolean


任何兼容的布尔值


ByteTypeHandler


java.lang.Byte, byte


任何兼容的数字或字节类型


ShortTypeHandler


java.lang.Short, short


任何兼容的数字或短整型


IntegerTypeHandler


java.lang.Integer, int


任何兼容的数字和整型


LongTypeHandler


java.lang.Long, long


任何兼容的数字或长整型


FloatTypeHandler


java.lang.Float, float


任何兼容的数字或单精度浮点型


DoubleTypeHandler


java.lang.Double, double


任何兼容的数字或双精度浮点型


BigDecimalTypeHandler


java.math.BigDecimal


任何兼容的数字或十进制小数类型


StringTypeHandler


java.lang.String


CHAR 和 VARCHAR 类型


ClobTypeHandler


java.lang.String


CLOB 和 LONGVARCHAR 类型


NStringTypeHandler


java.lang.String


NVARCHAR 和 NCHAR 类型


NClobTypeHandler


java.lang.String


NCLOB 类型


ByteArrayTypeHandler


byte[]


任何兼容的字节流类型


BlobTypeHandler


byte[]


BLOB 和 LONGVARBINARY 类型


DateTypeHandler


java.util.Date


TIMESTAMP 类型


DateOnlyTypeHandler


java.util.Date


DATE 类型


TimeOnlyTypeHandler


java.util.Date


TIME 类型


SqlTimestampTypeHandler


java.sql.Timestamp


TIMESTAMP 类型


SqlDateTypeHandler


java.sql.Date


DATE 类型


SqlTimeTypeHandler


java.sql.Time


TIME 类型


ObjectTypeHandler


Any


其他或未指定类型


EnumTypeHandler


Enumeration Type


VARCHAR-任何兼容的字符串类型,作为代码存储(而不是索引)


EnumOrdinalTypeHandler


Enumeration Type


任何兼容的 NUMERIC 或 DOUBLE 类型,作为位置存储(而不是代码本身)。

原文地址:https://www.cnblogs.com/x1nghe/p/11131904.html

时间: 2024-08-14 16:54:57

typeHandlers(类型处理器)的相关文章

笔记:MyBatis XML配置-typeHandlers 默认类型处理器

类型处理器 Java 类型 JDBC 类型 BooleanTypeHandler java.lang.Boolean, boolean 数据库兼容的 BOOLEAN ByteTypeHandler java.lang.Byte, byte 数据库兼容的 NUMERIC 或 BYTE ShortTypeHandler java.lang.Short, short 数据库兼容的 NUMERIC 或 SHORT INTEGER IntegerTypeHandler java.lang.Integer,

Mybatis—typeHandlers默认支持的类型处理器

类型处理器 Java类型 JDBC类型 BooleanTypeHandler java.lang.Boolean,boolean 数据库兼容的 BOOLEAN ByteTypeHandler java.lang.Byte, byte 数据库兼容的 NUMERIC 或 BYTE ShortTypeHandler java.lang.Short, short 数据库兼容的 NUMERIC 或 SHORT INTEGER IntegerTypeHandler java.lang.Integer, in

浩哥解析MyBatis源码(九)——Type类型模块之类型处理器注册器(TypeHandlerRegistry)

原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/6709157.html 1.回顾 上一篇研究的是类型别名注册器TypeAliasRegister,它主要用于将基本类型和用户自定义的类型进行别名注册,将别名及其对应类类型保存在一个HashMap中,方便存取,是映射器映射功能实现的基础,本篇所研究的类型处理器注册器TypeHandlerReister是用来统筹管理类型处理器的,类型处理器是真正用于进行java类型与数据库类型映射的工具. 这

MyBatis学习笔记(二):创建自定义类型处理器

MyBatis定义了一些默认处理器,可以用来设置参数或取结果集时实现自动转换,有些类型MyBatis是不支持的,例如Java 8中的日期类型,本文将介绍如何定义自定义类型处理器,来满足最新的日期类型. 一. 新建数据库表students,包含time和date类型,我用的是MySql数据库 -- 创建students示例表 create table students (     id int primary key auto_increment,     name varchar(20),   

mybatis扩展之自定义类型处理器处理枚举类型

全局配置: <typeHandlers> <typeHandler handler="com.gong.mybatis.typeHandler.MyEnumEmpStatusTypeHandler" javaType="com.gong.mybatis.bean.EmpStatus"/> <!-- <typeHandler handler="org.apache.ibatis.type.EnumOrdinalTypeHa

mybatis扩展之类型处理器(枚举类型处理)

Employee.java(省略getter和setter方法) private Integer id; private String lastName; private String gender; private String email; private EmpStatus empStatus=EmpStatus.LOGOUT; private Department dept; EmpStatus.java package com.gong.mybatis.bean; public enu

MyBatis之旅-配置MyBatis的环境

我使用Gradle来构建MyBatis的依赖,构建代码如下: def mybatisVersion     = "3.3.0" def mybatisSpringVersion = "1.2.3" compile ( "org.mybatis:mybatis-spring:$mybatisSpringVersion", "org.mybatis:mybatis:$mybatisVersion" ) 然后我在项目下再新建一个So

笔记:MyBatis XML配置详解

MyBatis 的配置文件包含了影响 MyBatis 行为甚深的设置(settings)和属性(properties)信息.文档的顶层结构如下: configuration 配置 properties 属性 settings 设置 typeAliases 类型命名 typeHandlers 类型处理器 objectFactory 对象工厂 plugins 插件 environments 环境 environment 环境变量 transactionManager 事务管理器 dataSource

mybatisPeizhixml文件的层次结构

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <properties/><!-- 属