Java 杂谈

mybatis自动生成映射和实体定义的方法

2018-04-25  本文已影响0人  belllee

前提条件

假设mybatis的相关依赖已经引入。这里只描述如何自动生成mybatis的映射和实体定义文件的方法。

pom配置

在pom文件中增加如下配置

<build>
  <plugins>
    <!-- 自动生成实体类 -->
    <plugin>
      <groupId>org.mybatis.generator</groupId>
      <artifactId>mybatis-generator-maven-plugin</artifactId>
      <version>1.3.2</version>
      <configuration>
        <verbose>true</verbose>
        <overwrite>true</overwrite>
      </configuration>
    </plugin>
  </plugins>
</build>

规则配置

在src/main/resource目录中增加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>
    <!--数据库驱动路径-->
    <classPathEntry location="D:\maven\repo\mysql\mysql-connector-java\5.1.40\mysql-connector-java-5.1.40.jar" />
    <context id="DB2Tables" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="false"/>
        </commentGenerator>
        <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://10.1.1.1:3306/mapping" userId="user" password="password">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!--数据表映射的实体类定义文件目录定义和相关参数设置-->
        <javaModelGenerator targetPackage="com.my.domain" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!--sql语句定义文件生成的位置目录定义和相关参数设置-->
        <sqlMapGenerator targetPackage="com.my.mybatis" targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!--sql语句映射成java接口定义文件生成的位置目录定义和相关参数设置-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.my.mapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
        <!--下面是数据库表名和项目中需要生成类的名称,建议和数据库保持一致,如果有多个表,添加多个节点即可-->
        <table  tableName="user" domainObjectName="User" enableCountByExample="false" enableSelectByExample="false" enableUpdateByExample="false" enableDeleteByExample="false">
        </table>
        <table  tableName="config" domainObjectName="Config" enableCountByExample="false" enableSelectByExample="false" enableUpdateByExample="false" enableDeleteByExample="false">
        </table>
    </context>
</generatorConfiguration>

参数说明一下:

生成

执行 mvn mybatis-generator:generate,然后在工程下相关目录,就能看到指定数据表生成的实体,sql定义和sql映射文件。

更加详细的说明请查看官方文档:http://mbg.cndocs.ml

上一篇下一篇

猜你喜欢

热点阅读