mybatis-generator自动生成Demo
背景:
本人之前没有用过mybatis-generator 这个东西,还很烦Mybatis都得手动增删改查,字段多更是要命,写错是常有的事,后来换了新公司,发现他们的代码都是baseMapper,点开配置文件,发现了这个东西,
于是研究了一下,今日在家自己弄个Demo,以后解放双手~
正题:
1. 首先你肯定需要第三方依赖,上pom代码:
看如果发生了generatorConfig.xml does not exist问题 ,那你肯定没和我的一样。
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<!-- 这里很重要,最好直接把你的generatorConfig.xml文件配置在resources下面,否则你会报错,找不到generatorConfig.xml文件-->
<configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
<executions>
<execution>
<id>Generate MyBatis Artifacts</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.2</version>
</dependency>
</dependencies>
</plugin>
依赖配置好了,那你的Maven肯定是有这个插件了:

2.接下来上generatorConfig.xml配置文件代码:
下面我解释一下
<classPathEntry
location=驱动位置
targetPackage: 你想生成文件的地方
targetProject:你的项目路径java包下
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <classPathEntry location="D:/EXE/插件/mysql-connector-java-8.0.21.jar"/> <context id="my" targetRuntime="MyBatis3"> <commentGenerator> <property name="suppressDate" value="false"/> <property name="suppressAllComments" value="true"/> </commentGenerator> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/chr?serverTimezone=UTC" userId="****" password="****"/> <javaModelGenerator targetPackage="com.study.springdemo.test" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> <property name="trimStrings" value="true"/> </javaModelGenerator> <sqlMapGenerator targetPackage="com.study.springdemo.test" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> <javaClientGenerator targetPackage="com.study.springdemo.test" targetProject="src/main/java" type="XMLMAPPER"> <property name="enableSubPackages" value="true"/> </javaClientGenerator> <table tableName="teacher" domainObjectName="TeacherBase" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"> <!--<columnRenamingRule searchString="^D_" replaceString=""/>--> </table> </context> </generatorConfiguration>
好了,这个配置到这就结束了,数据库账号密码别忘了换,赶紧试试吧~
---------------分隔符----------------------------------
自动生成example类
很多小伙伴已经再用example进行增删改查,这个是有入侵性质的,那么该如何做呢? 很简单,下面我踩过的坑都写出来。
1.下面的false全部改成true就会自动生成:
<table tableName="teacher" domainObjectName="TeacherBase" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
但是报错了,非常不理解,为啥有这个错误? 先看第二个报错,这个好理解,告诉你context是有顺序的和你解析mybatis.xml文件一样。 必须按照它的顺序排序。
2.元素类型为 "context" 的内容必须匹配

排序方法:

排序后报错解决了,还剩下一个问题:

这个问题如何解决??? 再想想?已经提示很多了。
其实只要把这两个标签干掉就行了,应该是 想某个字段值自动兼容,所以在这里特殊设置把。后期知道了再来补充:

好了,成果展示;

好啦,到此结束,具体用法很简单,可以搜索网上,我这也篇博客其实也没什么技术水平,就是想把问题记录下来,以后好回顾~~~谢谢!

浙公网安备 33010602011771号