mybatis generator如何定制JavaTypeResolver,使smallint类型的数据库字段在po中的类型为Integer?
一、问题概述
忙了一段时间的jenkins持续集成,又要开始开发任务了。这两天在用mybatis generator来逆向生成dao层工程。
其中一个问题在于,组长在设计表的时候,不少枚举使用了smallint类型,如下:

然后,mybatis generator就会针对smallint类型的列,生成short类型的java域。
我还是偏爱Integer,因为懒。懒得转来转去。
二、解决办法
修改mybatis generator使用的默认的JavaTypeResolver实现。
其默认实现为org.mybatis.generator.internal.types.JavaTypeResolverDefaultImpl,其中有如下的一段:

这个一猜就是,将smallint类型的字段,映射为Short类型的java域。
我的办法是将其默认实现类的内容复制,然后修改了上图中的标识处,然后配置到xml文件中。

上面就是我自定义的类型解析器,内容拷贝了默认实现。然后照下面这样修改了:

配置到xml:

差不多就这样。ok了。
三、源码
https://github.com/cctvckl/customed-mybatis-generator
mybatis generator如何定制JavaTypeResolver,使smallint类型的数据库字段在po中的类型为Integer?的更多相关文章
- Mybatis Generator(定制化)代码生成器
1.使用Mapper专用的MyBatis Generator插件 通用Mapper在1.0.0版本的时候增加了MyBatis Generator(以下简称MBG)插件,使用该插件可以很方便的生成实体类 ...
- [C#] 类型学习笔记一:CLR中的类型,装箱和拆箱
在学习.NET的时候,因为一些疑问,让我打算把.NET的类型篇做一个总结.总结以三篇博文的形式呈现. 这篇博文,作为三篇博文的第一篇,主要探讨了.NET Framework中的基本类型,以及这些类型一 ...
- MyBatis Generator 详解
MyBatis Generator中文文档 MyBatis Generator中文文档地址:http://mbg.cndocs.tk/ 该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中 ...
- MyBatis Generator 详解 【转来纯为备忘】
版权声明:版权归博主所有,转载请带上本文链接!联系方式:abel533@gmail.com 目录(?)[+] MyBatis Generator中文文档 运行MyBatis Generator X ...
- mybatis Generator配置文件详解
这里按照配置的顺序对配置逐个讲解,更细的内容可以配合中文文档参照. 1. 配置文件头 <?xml version="1.0" encoding="UTF-8&quo ...
- MyBatis Generator中文文档
MyBatis Generator中文文档 MyBatis Generator中文文档地址: http://mbg.cndocs.tk/ 该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看 ...
- MyBatis Generator 详解(转)
MyBatis Generator中文文档 MyBatis Generator中文文档地址:http://mbg.cndocs.tk/ 该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中 ...
- MyBatis Generator 详解 专题
idea中有plugin可提高效率: http://www.henryxi.com/use-idea-mybatis-plugin-generate-mapper-files eg: <?xml ...
- MyBatis学习总结_09_使用MyBatis Generator自动创建代码
一.构建一个环境 1. 首先创建一个表: CREATE TABLE t_user ( USER_ID INT NOT NULL AUTO_INCREMENT, USER_NAME CHAR(30) N ...
随机推荐
- js 1+'2' == '1'+'2'
前言 非常深入地讲解了包含隐式转换时js计算过程,全篇干货.本文由@keenjaan授权分享. 本文由@仙人掌推荐分享 正文从这里开始 你有没有在面试中遇到特别奇葩的js隐形转换的面试题,第一反应是怎 ...
- C++入门学习
使用cout和cin,需要包括C++提供的输入输出库.#include <iostream> 标准输入输出头文件 <string> using namesp ...
- IE中自定义标签使用自封闭格式引发错误!
最近学习IONIC,其中用到了ion-menu-nav-button,由于标签开始和结尾之间没有内容,所以图省事儿使用自封闭标签的写法: <ion-menu-nav-button class=& ...
- flask with gae开发小结
最近因为要重写之前发布在GAE上的一个博客,又回顾了一下python,同时,因为用的flask,gae等等,一道写一些小总结,供日后查阅. 1, slugify 其实这个问题可以不考虑,只要你愿意用中 ...
- ubuntu下安装程序的五种方法
在ubuntu当中,安装应用程序我所知道的有三种方法,分别是apt-get,dpkg安装deb和make install安装源码包三种.下面针对每一种方法各举例来说明. 一.apt-get方法 使用a ...
- 字符编码笔记:ASCII,Unicode 和 UTF-8
http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html
- Go中error类型的nil值和nil
https://my.oschina.net/chai2010/blog/117923
- 【jmeter】 jmeter 测试HTTP接口
到apache官网下载jmeter:http://jmeter.apache.org/download_jmeter.cgi 1.运行 bin/jmeter.bat ,添加线程组 2.添加HTTP请求 ...
- Smallest Difference(暴力全排列)
Smallest Difference Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10387 Accepted: 2 ...
- 产品半夜发现bug让程序员加班,程序员应如何回应?
群友半夜2点被产品叫起来改东西,然后他打车去公司加班,群友愤慨,特为此创作一个小段子 产品:XXX出bug了你赶紧看看 修复一下 开发:我宿舍没电脑 没网络啊 产品:你看看周围有没有网吧远程一下 或者 ...