博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
修改mybatis-generate源码实现实体类加上字段注释
阅读量:6033 次
发布时间:2019-06-20

本文共 1061 字,大约阅读时间需要 3 分钟。

hot3.png

使用mybatis代码自动生成插件可以节约开发者很多时间,但是由它生成的实体类并没有把表字段注释给加上,这样后期要想知道某个属性是做什么的,不得不去数据库查看,相对来说幸福感就没有那么强了,基于此,只能自己试着去修改源码,实现自己想要的文件样子,功夫不负有心人,在简单了解下源码后终于把实体类加上注释了,本文介绍如何去修改mybatis代码生成源码,实现实体类加上字段注释。

        首先需要下载mybatis-generator-core-1.3.2的源码,然后创建一个maven项目,把源码放到项目里面去,方便修改。

        接着修改api.dom.java里面的Field类,添加一个注释的属性以及set,get方法,如图

Center

接着修改该类的getFormattedContent方法,该方法原来是返回修饰符+类型+属性名;我们只需要在后面判断一下remarks是否为空,并把它拼在原来的字符串后面即可,如图

 

接着我们就需要为我们新增的remarks赋值了,通过查看源码,可以发现这个动作发生在package org.mybatis.generator.codegen包下面的AbstractJavaGenerator的getJavaBeansField方法,刚好发现作者写插件的时候是有读取字段注释的,为IntrospectedColumn的remarks属性,所以到这里事情就变得简单多了,只要把字段名类型赋值给Field的同时把remarks也赋值一下就搞定了,如图

改完这三个地方,把改动的class替换原有jar包里面的文件(当然你也可以重新打包),执行一下生成命令,注释出现在实体类上了,但是竟然是乱码,无奈只能继续修改,找到它写文件的地方MyBatisGenertor(通过生成代码时候打印的日志信息进行查找,就能快速知道它大概在哪个位置),默认改为UTF-8编码写文件,位置在package org.mybatis.generator.api 包下,更改代码如下图所示:

修改完成后,再把这个class替换到原来的jar包,再次执行生成命令,这一次中文注释完美的出现了,这样后来人查看的时候就不用再去数据库看看这个到底是做什么用的啦。

 修改的地方不多,总算实现了自己想要的目的,敢于去尝试,总会得到想要的。

补充: 通过Eclipse 生成jar 包:

  在项目上面右单击---》如下图:

182802_3f57_2919420.png

182911_X2FW_2919420.png

183456_Oy5W_2919420.png

 将生成的jar 替换掉之前引用的。

转载于:https://my.oschina.net/kuchawyz/blog/1816874

你可能感兴趣的文章
让我去健身的不是漂亮小姐姐,居然是贝叶斯统计!
查看>>
MySQL 数据约束
查看>>
我的友情链接
查看>>
SERVLET容器简介与JSP的关系
查看>>
《服务器SSH Public Key认证指南》-补充
查看>>
我的友情链接
查看>>
Java break continue return 的区别
查看>>
算法(Algorithms)第4版 练习 1.3.4
查看>>
jquery easyUI checkbox复选项获取并传后台
查看>>
浅析NopCommerce的多语言方案
查看>>
设计模式之简单工厂模式
查看>>
C++中变量的持续性、链接性和作用域详解
查看>>
2017 4月5日上午
查看>>
Google Chrome开发者工具
查看>>
第一阶段冲刺报告(一)
查看>>
使用crontab调度任务
查看>>
【转载】SQL经验小记
查看>>
zookeeper集群搭建 docker+zk集群搭建
查看>>
Vue2.5笔记:Vue的实例与生命周期
查看>>
论JVM爆炸的几种姿势及自救方法
查看>>