本文目标为定制化生成数据持久化映射对象(Domain)文件、数据操作Dao文件、及其相应的Mybatis Mapper文件。
用Mybatis Generator有不便之处是只实现了定制化生成Domain字段注释,而不能定制化生成类注释、方法、方法注释等。本文将定制化更进一步,生成你想要的Domain,Dao,Mybatis Mapper文件。
1. 思路
a. 从数据库的元数据表information_schema获取表结构信息,如表名、表注释、字段名、字段类型、字段注释等。这里用到传统的jdbc。
b. 写Mysql、java、Mybatis数据类型转化器。
c. 实现生成Domain,Dao,Mapper的工具类。
d. 实现生成文件的工具类。
e. 完成串联所有工具的main方法。
2. 程序使用介绍
以下代码是MybatisGenerator.java中main方法的关键代码:
注:Domain用了lombok的@Data注解,因此没有生成get,set方法。
3. 效果
(只截取部分代码)
Domain
Dao
Mapper
感谢同事的启发与指导,有他们的帮助才得以此文。
由于屏幕限制,代码展示效果差,请移步简书查看:https://www.jianshu.com/p/5a0740c34dd2
如需要源码,请下载https://github.com/code-group/mybatisGenerator.git
领取专属 10元无门槛券
私享最新 技术干货