mybatis生成工具实现方法(纯手写)

今天来介绍下怎么用io流写自动生成mybatis的工具类,我也是这两天才开始研究,如果有错误的地方,请指出。

这边只是一个大概的创建流程,细化的东西这边很难说全,如果有需要就通过下面的链接下载源代码,基本上每行代码都有注释,详细说明,也希望学习的同鞋可以完善,欢迎评论

参考代码下载链接:https://download.csdn.net/my

流程

1.读取xml中数据库相关数据,和实体类等路径相关数据(为简洁只放一些关键数据)

mybatis生成工具实现方法(纯手写)_第1张图片

2.获取数据库连接,读取表的主键属性信息和其他列属性信息

mybatis生成工具实现方法(纯手写)_第2张图片

3.获取到数据库表的各个列的属性信息后就可以拼接实体类

    3.1 先创建目录

    

    3.2 创建字符输出流

    

    3.3 拼接字符串期间建议使用StringBuffer进行拼接,高效而且安全

    mybatis生成工具实现方法(纯手写)_第3张图片

 3.4 后面只是一些简单的字符串拼接,最后通过输出流读到文件里面就行了

4.拼接mapper接口同上,简单的字符串拼接

5.拼接mybatis的xml,此处比较复杂,并不是拼接上的复杂,而是各种细节的处理(换行,逗号结尾的处理,每行长度的处理,缩进的处理等等)具体方法和第三步类似

6.目录结构和效果图

mybatis生成工具实现方法(纯手写)_第4张图片

通过Produce.java里面的main方法启动

在字符输出流创建时可以指定目录(默认当前项目src目录下创建)

mybatis生成工具实现方法(纯手写)_第5张图片

生成完成后如图

mybatis生成工具实现方法(纯手写)_第6张图片

mapper.xml中只写了查询、删除和新增接口的实现(后面套路相同),希望使用的人可以将后面缺失的更新方法补齐,可以更好的了解和学习

你可能感兴趣的:(mybatis生成工具,手写mybatis生成工具)