首先需要下载mybatis-generator-core-1.3.2的源码,然后创建一个maven项目,把源码放到项目里面去,方便修改。
接着修改api.dom.Java里面的Field类,添加一个注释的属性以及set,get方法,如图
接着修改该类的getFormattedContent方法,该方法原来是返回修饰符+类型+属性名;我们只需要在后面判断一下remarks是否为空,并把它拼在原来的字符串后面即可,如图
接着我们就需要为我们新增的remarks赋值了,通过查看源码,可以发现这个动作发生在codegen包下面的AbstractJavaGenerator的getJavaBeansField方法,刚好发现作者写插件的时候是有读取字段注释的,为IntrospectedColumn的remarks属性,所以到这里事情就变得简单多了,只要把字段名类型赋值给Field的同时把remarks也赋值一下就搞定了,如图
改完这三个地方,把改动的class替换原有jar包里面的文件(当然你也可以重新打包),执行一下生成命令,注释出现在实体类上了,但是竟然是乱码,无奈只能继续修改,找到它写文件的地方MyBatisGenertor(通过生成代码时候打印的日志信息进行查找,就能快速知道它大概在哪个位置),默认改为UTF-8编码写文件,位置如下图
修改完成后,再把这个class替换到原来的jar包,再次执行生成命令,这一次中文注释完美的出现了,这样后来人查看的时候就不用再去数据库看看这个到底是做什么用的啦。
修改的地方不多,总算实现了自己想要的目的,敢于去尝试,总会得到想要的。