MyBatis Generator工具使用(自动生成实体类、SQL定义文件、Mapper接口)

版权声明:cxyo.cn https://blog.csdn.net/weixin_44075537/article/details/84980116

创建一个ovls-generator工程

核心是MyBatis Generator(它可以生成POJO(实体类)和sql.xml及sql方法和mapper(DAO接口))
一.导包

mysql-connector-java
mybatis
mybatis-generator-core

代码:

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
          <modelVersion>4.0.0</modelVersion>
          <groupId>cn.xdl</groupId>
          <artifactId>ovls-generator</artifactId>
          <version>0.0.1-SNAPSHOT</version>
          <dependencies>
            <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis</artifactId>
                <version>3.4.6</version>
            </dependency>
            <dependency>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-core</artifactId>
                <version>1.3.5</version>

            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.46</version>
            </dependency>
          </dependencies>
        </project>

二.添加工具mybatis-generator配置文件mbg.xml在根目录下

配置文件内容在这个网站复制
http://www.mybatis.org/generator/configreference/xmlconfig.html
可以根据现有数据库表生成实体类、SQL定义文件、Mapper接口。
修改配置内容(自己的驱动包,自己的连接参数)

driverClass="com.mysql.jdbc.Driver"
jdbc:mysql://localhost:3306/库名

targetPackage="实体类存放的位置"

targetProject="实体类存放的项目目录">

代码

<?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>
<!-- 指定驱动包 ,复制mysql-connector-java-5.1.46.jar路径过来-->
  <classPathEntry location="C:\Users\Administrator\.m2\repository\mysql\mysql-connector-java\5.1.46\mysql-connector-java-5.1.46.jar" />

  <context id="DB2Tables" targetRuntime="MyBatis3">
    <!-- 指定连接参数 -->
    <!-- jdbc:mysql://localhost:3306/库名 -->
    <jdbcConnection driverClass="com.mysql.jdbc.Driver"
        connectionURL="jdbc:mysql://localhost:3306/ovls"
        userId="root"
        password="root">
    </jdbcConnection>

    <javaTypeResolver >
      <property name="forceBigDecimals" value="false" />
    </javaTypeResolver>

    <!-- 指定entity实体类位置 -->
    <!-- targetPackage="实体类存放的位置" 
    targetProject="实体类存放的项目目录"> -->
    <javaModelGenerator targetPackage="cn.xdl.ovls.entity" targetProject=".\src\main\java">
      <property name="enableSubPackages" value="true" />
      <property name="trimStrings" value="true" />
    </javaModelGenerator>

    <!-- 指定sql xml位置 -->
    <sqlMapGenerator targetPackage="sql"  targetProject=".\src\main\resources">
      <property name="enableSubPackages" value="true" />
    </sqlMapGenerator>

    <!-- 指定Mapper接口位置 -->
    <javaClientGenerator type="XMLMAPPER" targetPackage="cn.xdl.ovls.dao"  targetProject=".\src\main\java">
      <property name="enableSubPackages" value="true" />
    </javaClientGenerator>

    <!-- 指定根据数据哪些表生成上面元素 -->
    <table  tableName="%" enableCountByExample="false" 
		        enableDeleteByExample="false" enableSelectByExample="false"
		        enableUpdateByExample="false">
		    </table>

  </context>
</generatorConfiguration>

三.加载配置文件执行生成

配置文件内容在这个网站复制
http://www.mybatis.org/generator/running/runningWithJava.html
创建一个RunMyBitisGenerator类复制里面代码
运行 快捷键Alt+Shift+X,J
自动生成实体类、SQL定义文件、Mapper接口
代码

public class RunMyBatisGenerator {

    public static void main(String[] args) throws Exception{
            List<String> warnings = new ArrayList<String>();
           boolean overwrite = true;
           File configFile = new File("mbg.xml");
           ConfigurationParser cp = new ConfigurationParser(warnings);
           Configuration config = cp.parseConfiguration(configFile);
           DefaultShellCallback callback = new DefaultShellCallback(overwrite);
           MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
           myBatisGenerator.generate(null);
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_44075537/article/details/84980116