1.導(dǎo)入依賴
<!--tkmybatis-->
<!--通用mapper-->
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>2.1.2</version>
</dependency>
2.導(dǎo)入打包插件
<!--tkmybatis插件-->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
<overwrite>true</overwrite>
<verbose>true</verbose>
</configuration>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper</artifactId>
<version>3.4.3</version>
</dependency>
</dependencies>
</plugin>
3.resource目錄下新建generator目錄和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>
<!-- 引入 application.properties -->
<properties resource="application.properties" />
<!-- MyBatis3Simple:不生成 Example相關(guān)類及方法 defaultModelType="flat" -->
<context id="MysqlContext" targetRuntime="MyBatis3Simple" >
<property name="beginningDelimiter" value="`"/>
<property name="endingDelimiter" value="`"/>
<!-- 指定生成 Mapper 的繼承模板 -->
<plugin type="tk.mybatis.mapper.generator.MapperPlugin">
<property name="mappers" value="${generator.mappers}"/>
</plugin>
<!--注意context內(nèi)的文件要按序放-->
<commentGenerator>
<property name="suppressDate" value="true"/>
<!-- 是否去除自動生成的注釋 true:是 : false:否 -->
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<!-- jdbc 連接配置 -->
<jdbcConnection driverClass="${spring.datasource.driver-class-name}"
connectionURL="${spring.datasource.url}"
userId="${spring.datasource.username}"
password="${spring.datasource.password}">
</jdbcConnection>
<javaTypeResolver>
<!-- 是否使用bigDecimal奸鸯, false可自動轉(zhuǎn)化以下類型(Long, Integer, Short, etc.) -->
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!-- 生成實體類的包名和位置 痰娱,targetPackage指的是包名,targetProject值得是路徑位置-->
<!-- 對于生成的pojo所在包,pojo其實就是domain Entity-->
<javaModelGenerator targetPackage="${generator.javaModel-targetPackage}" targetProject="${generator.targetProject}">
<property name="enableSubPackages" value="true"/>
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!-- 對于生成的mapper.xml所在目錄 -->
<sqlMapGenerator targetPackage="${generator.sqlMap-targetPackage}" targetProject="src/main/resources"/>
<!-- 配置mapper對應(yīng)的java映射 也可以叫dao層 -->
<javaClientGenerator targetPackage="${generator.javaClient-targetPackage}" targetProject="${generator.targetProject}"
type="XMLMAPPER"/>
<!-- table可以有多個,每個數(shù)據(jù)庫中的表都可以寫一個table,tableName表示要匹配的數(shù)據(jù)庫表,也可以在tableName屬性中通過使用%通配符來匹配所有數(shù)據(jù)庫表,只有匹配的表才會自動生成文件 -->
<table tableName="sys_user"></table>
</context>
</generatorConfiguration>
4.配置application.properties
這個只是生成器生成代碼使用,使用完記得注釋掉
#log
#logging.level.com.lvxk.demo.dao=debug
#datasource
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://192.168.79.135:3307/d_lvxk?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=123456
# Generator
generator.targetProject=src/main/java
#mapper的父類
generator.mappers=tk.mybatis.mapper.common.Mapper
#pojo所在報名
generator.javaModel-targetPackage=com.lvxk.demo.model
#mapper.xml位于resource文件夾下的哪個目錄中
generator.sqlMap-targetPackage=sqlmapper
#mapper包名
generator.javaClient-targetPackage=com.lvxk.demo.dao
5.點擊插件運行
生成成功
6.將其它表也配置進(jìn)去
<table tableName="sys_config"></table>
<table tableName="sys_dept"></table>
<table tableName="sys_dict"></table>
<table tableName="sys_log"></table>
<table tableName="sys_login_log"></table>
<table tableName="sys_menu"></table>
<table tableName="sys_role"></table>
<table tableName="sys_role_dept"></table>
<table tableName="sys_role_menu"></table>
<table tableName="sys_user_role"></table>