修改表结构后,自动生成(mybatis-generator)时遇到的坑

Posted gywfight

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修改表结构后,自动生成(mybatis-generator)时遇到的坑相关的知识,希望对你有一定的参考价值。

  没想到几个月后,又回看然后用到了,这次是新建了一个数据表,需要配置让微服务自动生成Mapper.java、entity和Mapper.xml

  比修改表结构多一个步骤,需要在mybatis-generator.xml里添加<table> xxxx </table>,里面还可以定义需要自动生成哪些sql等信息。 

  ---------------------------------------------------------------------------------------------------------------  1更  ----------------------------------------------------------------------------------------------------------------

  我们的项目是springboot搭起来的,按照接口API -> Service -> Common(Manager、Mapper、dao)这种Maven的依赖结构,所以负责配置连接数据库,自动生成文件的mybatis-generator.xml也就从common包里找。现在问题的场景是项目此前已经按照数据表自动生成了mapper内容,现在由于bug或者业务调整要改变表结构,就要注意以下几个坑:

  1、要找到common文件夹下的generator.xml文件释放相应表的<table  >注释,再点击Plugin -> mybatis-generator -> m 右键进行Run Maven Build。

 

  2、一般控制台出现“BUILD SUCCESS”就是构建成功了,不急,我们再去git中(这里我用了一个名为TortoiseGitMerge的git可视化软件)查看哪些文件被自动修改了,这里针对该项目,Example.java文件中以前是BaseGeneratedCriteria的方法名都被修改成了GeneratedCriteria,我们要改回来,不然阿里规约扫描过不了,不能合并代码,这次发现改了3处

  3、还有Mapper.java文件中如果有自己添加的数据库操作,会被自动生成覆盖掉,也可以从TortoiseGitMerge中revert回来,另外,如果要一个部分一个部分的改,可以使用Use this text block功能

 

欢迎大伙补充~

 

 

以上是关于修改表结构后,自动生成(mybatis-generator)时遇到的坑的主要内容,如果未能解决你的问题,请参考以下文章

sql怎么把表结构导出来

Django models文件模型变更注意事项(表结构的修改)

创建一对多表结构实例 /操作的三种方式

SQL Server修改表结构后批量更新所有视图

mysql数据库基本操作(表结构)

mysql修改表结构