pom.xml
<build>
<plugins>...</plugins>
</build>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.7</version><!--自己维护版本-->
<configuration>
<overwrite>true</overwrite>
</configuration>
<dependencies>
<!--版本不写交给项目自动管理<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.2</version>
</dependency>-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>
</dependencies>
</plugin>
包名的参考
src/main/java
com.qbsea.mysboot2shirojwt.common.mybatis
entities.customed
entities.generated
mapper.customed
mapper.generated
src/main/resource
mapper/customed
mapper/generated
-------------自定义个性方法TUserJwtshiroSubMapper-------
TUserJwtshiroMapper是插件生成的 TUserJwtshiroSubMapper是自己自定义的
package com.qbsea.mysboot2shirojwt.common.mybatis.mapper.customed;
import com.qbsea.mysboot2shirojwt.common.mybatis.entities.generated.TUserJwtshiro;
import com.qbsea.mysboot2shirojwt.common.mybatis.mapper.generated.TUserJwtshiroMapper;
public interface TUserJwtshiroSubMapper extends TUserJwtshiroMapper {
TUserJwtshiro findById(Long id);
}
然后在mapper/customed目录下存在一个TUserJwtshiroSubMapper.xml
在src/resource目录下存在如下两个文件
generatorConfig.properties
generatorConfig.xml
generatorConfig.properties
#jdbc
connectionURL=jdbc:mysql://xxxipxxx:port/maqingbin?useUnicode=true
userId=root
password=password
#javamodel
javaModelGenerator_targetPackage=com.qbsea.xxx.common.mybatis.entities.generated
#mapper.xml
mapperXml_targetPackage=mapper/generated
#mapper.xml_src/main/resources 或者 MAVEN
mapperXml_targetProject=MAVEN
#mapperDao package
javaClientGenerator_targetPackage=com.qbsea.xxx.common.mybatis.mapper.generated
#mapperDao #src/main/java 或者 MAVEN
javaClientGenerator_targetProject=src/main/java
#table
tableName=t_user_jwtshiro
generatorConfig.xml放在src/main/resources目录下
targetProject="MAVEN" 表示生成的代码会在target/generatord-source目录下
<?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>
<properties resource="generatorConfig.properties"></properties>
<context id="default" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressDate" value="true"></property>
<property name="suppressAllComments" value="true"></property>
</commentGenerator>
<jdbcConnection
driverClass="com.mysql.jdbc.Driver"
connectionURL="${connectionURL}"
userId="${userId}"
password="${password}">
</jdbcConnection>
<javaTypeResolver>
<property name="forceBigDecimals" value="false"></property>
</javaTypeResolver>
<javaModelGenerator targetPackage="${javaModelGenerator_targetPackage}" targetProject="src/main/java">
<property name="enableSubPackages" value="false"></property>
<property name="constructorBased" value="true"></property>
<property name="trimStrings" value="true"></property>
<property name="immutable" value="false"></property>
</javaModelGenerator>
<!--mapper.xml每次重新生成会在原来的追加的,不会覆盖的,最终引发报错
如果以后不想再生成mapperXxx.xml后 只需把targetProject="MAVEN"
生成的代码会在target/generatord-source目录下
-->
<sqlMapGenerator targetPackage="${mapperXml_targetPackage}" targetProject="${mapperXml_targetProject}" >
<property name="enableSubPackages" value="false"></property>
</sqlMapGenerator>
<!-- <javaClientGenerator targetPackage="com.example.demo.dao" targetProject="src/main/java" type="ANNOTATEDMAPPER"> -->
<javaClientGenerator targetPackage="${javaClientGenerator_targetPackage}" targetProject="${javaClientGenerator_targetProject}" type="XMLMAPPER" >
<property name="enableSubPackages" value="true"></property>
</javaClientGenerator>
<!--如果想所有表都生成 可以将tableName="%" 然后去掉domainObjectName属性 -->
<table tableName="${tableName}"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false" >
<generatedKey column="id" sqlStatement="MySql" identity="true"></generatedKey>
</table>
</context>
</generatorConfiguration>