添加maven插件
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.7</version>
<configuration>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
<dependencies>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.7</version>
</dependency>
</dependencies>
</plugin>
</plugins>
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>
<properties resource="generator.properties"/>
<classPathEntry location="${jdbc.driverLocation}"/>
<context id="default" targetRuntime="MyBatis3">
<plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>
<!--<plugin type="org.mybatis.generator.plugins.BaseImportPlugin"/>-->
<!--<plugin type="org.mybatis.generator.plugins.EqualsHashCodePlugin" />-->
<plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>
<commentGenerator > <!--若自定义注释,可添加属性 type="com.gqlofe.MyCommentGenerator" MyCommentGenerator类自定义,继承DefaultCommentGenerator-->
<property name="javaFileEncoding" value="UTF-8"/>
<property name="suppressDate" value="true"/>
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<jdbcConnection driverClass="${jdbc.driverClass}"
connectionURL="${jdbc.connectionURL}" userId="${jdbc.userId}"
password="${jdbc.password}"/>
<javaTypeResolver>
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!--生成Model类存放位置-->
<javaModelGenerator targetPackage="${entityPath}" targetProject="${basePath}">
<property name="constructorBased" value="false"/>
<property name="enableSubPackages" value="true"/>
<property name="trimStrings" value="true"/>
<property name="immutable" value="false"/>
</javaModelGenerator>
<sqlMapGenerator targetPackage="${packagePath}" targetProject="${basePath}">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<javaClientGenerator targetPackage="${packagePath}" targetProject="${basePath}" type="XMLMAPPER">
<property name="enableSubPackages" value="true"/>
<property name="exampleMethodVisibility" value="default"/>
<property name="methodNameCalculator" value="default"/>
<!--<property name="rootInterface" value=""/>-->
<property name="useLegacyBuilder" value="false"/>
</javaClientGenerator>
<!-- 配置需要生成代码的数据库&表结构信息,如果多张表生成代码赋值多次填写即可 -->
<table schema="push" tableName="${tableName}" domainObjectName="${domainObjectName}"
enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
enableSelectByPrimaryKey="true" enableUpdateByPrimaryKey="true" enableInsert="true" enableDeleteByPrimaryKey="true"
/>
</context>
</generatorConfiguration>
generator.properties
#mysql驱动jar包位置
jdbc.driverLocation=D:/maven_repo/mysql/mysql-connector-java/8.0.13/mysql-connector-java-8.0.13.jar
jdbc.driverClass=com.mysql.cj.jdbc.Driver
jdbc.connectionURL=jdbc:mysql://localhost:3306/${database}?useSSL=false&serverTimezone=UTC
jdbc.userId=root
jdbc.password=123
# 项目
targetProject=com.test.demo
basePath=src/main/java
# 数据库名称
database=test
# 表名称
tableName=test
# 生成的实体类名
domainObjectName=TestDO
# 实体类目录
entityPath=com.test.demo.bean
# mapper文件目录
packagePath=com.test.demo.dao
自定义注释
generator插件生成的注释并不友好,若想将表字段的注释加载出来,需要自定义注释类
新建项目,添加generator插件依赖
关键是写一个类继承DefaultCommentGenerator,用maven打包。
编写自定义注释类,继承DefaultCommentGenerator
image.png打包到本地仓库。
image.png image.png
网友评论