项目集成mybatis generator自动生成代码
转自:https://blog.****.net/gnail_oug/article/details/80404870
MyBatis Generator并不需要spring boot环境,只需要自己写一个main方法运行即可,本文主要介绍使用maven插件的方式,集成mybatis generator自动生成代码
MyBatis Generator介绍
MyBatis Generator,缩写MBG,是一个Mybatis和iBatis的代码生成器。它支持Mybatis的所有版本,支持iBatis 2.2.0以后的版本。通过MyBatis Generator可以根据数据库表生成相应的实体、sql映射文件、Dao等,能应付简单的CRUD(Create, Retrieve, Update, Delete),对于连接查询或存储过程等还是要手动编写sql和对象。
开始项目实战
一、引入MyBatis Generator的maven插件
在pom.xml里添加
<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>
二、MyBatis Generator的常规配置
<?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">
<!-- 生成的POJO实现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://192.168.0.254:3306/chen"
userId="root"
password="123456"/>
<!-- 生成POJO对象,并将类放到com.chen.entity包下 -->
<javaModelGenerator targetPackage="com.chen.entity" targetProject="src/main/java"></javaModelGenerator>
<!-- 生成mapper xml文件,并放到resources下的mapper文件夹下 -->
<sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"></sqlMapGenerator>
<!-- 生成mapper xml对应dao接口,放到com.chen.mapper包下-->
<javaClientGenerator targetPackage="com.chen.mapper" targetProject="src/main/java" type="XMLMAPPER"></javaClientGenerator>
<!-- table标签可以有多个,至少一个,tableName指定表名,可以使用_和%通配符 -->
<table tableName="chen_user">
<!-- 是否只生成POJO对象 -->
<property name="modelOnly" value="false"/>
<!-- 数据库中表名有时我们都会带个前缀,而实体又不想带前缀,这个配置可以把实体的前缀去掉 -->
<domainObjectRenamingRule searchString="^Chen" replaceString=""/>
</table>
</context>
</generatorConfiguration>
运行maven插件即可生成对应文件