spring boot 整合mybatis-generator
本文参考来自csdn作者:gnail_oug 的文章。
原文:https://blog.csdn.net/gnail_oug/article/details/80404870
版权声明:转载请附上博文链接!
开发环境
eclipse
jdk1.8
mysql
maven
- 首先在spring boot项目的pom.xml中加入mybatis-generator插件
<dependencies>
......
</dependencies>
<build>
<plugins>
......
<!--mybatis自动生成代码插件 -->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.6</version>
<configuration>
<!-- 是否覆盖,true表示会替换生成的JAVA文件,false则不覆盖 -->
<overwrite>true</overwrite>
</configuration>
<dependencies>
<!--mysql驱动包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.45</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
- 跟着在resources目录下建立generatorConfig.xml文件,内容例子:
<?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>
<!-- defaultModelType="flat" 设置复合主键时不单独为主键创建实体 -->
<context id="MySql" defaultModelType="flat">
<!-- 生成的实体类实现java.io.Serializable接口 -->
<plugin type="org.mybatis.generator.plugins.SerializablePlugin" /> <!--注释 -->
<!-- 将数据库中表的字段描述信息添加到注释 -->
<commentGenerator>
<property name="addRemarkComments" value="true" /> <!-- 注释里不添加日期 -->
<property name="suppressDate" value="true" />
</commentGenerator>
<!-- 数据库连接 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/myscheme1" userId="root"
password="mypasswd1" />
<!-- 生成POJO对象,并将类放到per.ml.mall.entity包下 -->
<javaModelGenerator
targetPackage="per.ml.mall.entity"
targetProject="src/main/java">
</javaModelGenerator>
<!-- 生成mapper xml文件,并放到resources下的mapper文件夹下 -->
<sqlMapGenerator targetPackage="mapper"
targetProject="src/main/resources">
</sqlMapGenerator>
<!-- 生成mapper xml对应dao接口,放到per.ml.mall.mapper包下 -->
<javaClientGenerator
targetPackage="per.ml.mall.mapper"
targetProject="src/main/java" type="XMLMAPPER">
</javaClientGenerator>
<!-- table标签可以有多个,至少一个,tableName指定表名,可以使用_和%通配符 -->
<table tableName="ttt_user">
<!-- 是否只生成实体类对象 -->
<property name="modelOnly" value="false" />
<!-- 数据库表名有时会带个前缀ttt_user,而实体又不想带前缀,这个配置可以去掉前缀(下划线会转成驼峰,searchString是按转换后匹配的 例子:表ttt_user > 映射实体类TttUser > 经过本配置转换 --> User
<domainObjectRenamingRule searchString="^Ttt" replaceString="" />
</table>
</context>
</generatorConfiguration>
- 最后运行:右击pom.xml > Run As > Maven Build… > goals填:mybatis-generator:generate (删除profiles的:pom.xml) > Run
- 第一次运行需要等maven下载相应的jar包,然后entity和mapper文件就生成啦!