1. 程式人生 > 程式設計 >MyBatis逆向工程基本操作及程式碼例項

MyBatis逆向工程基本操作及程式碼例項

回想一下MyBatis的基本操作,它需要實體類,自定義mapper介面以及mapper.xml配置檔案。為了避免繁瑣的工作量,MyBatis Generator,簡稱MBG,可自動生成框架所需的這些依賴,同時支援基本的CRUD操作,但是需要注意,MBG一般不要重複執行,否則會出問題。

下面是引入MBG的基本操作:

一、新建maven專案,引入依賴:

<dependencies>
  <dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.5</version>
  </dependency>

  <dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.20</version>
  </dependency>

  <dependency>
    <groupId>org.mybatis.generator</groupId>
    <artifactId>mybatis-generator-core</artifactId>
    <version>1.4.0</version>
  </dependency>
</dependencies>

二、建立mbg配置檔案:

<?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>
  <context id="testMBG" targetRuntime="MyBatis3">
    <!-- 連線池 -->
    <jdbcConnection
        driverClass="com.mysql.cj.jdbc.Driver"
        connectionURL="jdbc:mysql://localhost:3306/demo"
        userId="root"
        password=""
    ></jdbcConnection>
    <!-- 配置JavaBean生成策略 -->
    <javaModelGenerator targetPackage="com.wts.entity" targetProject="./src/main/java"></javaModelGenerator>
    <!-- 配置SQL對映檔案生成策略 -->
    <sqlMapGenerator targetPackage="com.wts.entity" targetProject="./src/main/java"></sqlMapGenerator>
    <!-- 配置Mapper介面的生成策略 -->
    <javaClientGenerator targetPackage="com.wts.entity" targetProject="./src/main/java"></javaClientGenerator>
    <table tableName="user" domainObjectName="User"></table>
  </context>
</generatorConfiguration>

三、執行Generator:

public class MyTest {
  public static void main(String[] args) {
    List<String> warnings = new ArrayList<>();
    File configFile = new File(MyTest.class.getResource("generatorConfig.xml").getFile());
    ConfigurationParser configurationParser = new ConfigurationParser(warnings);
    Configuration configuration = null;
    try {
      configuration = configurationParser.parseConfiguration(configFile);
    } catch (IOException e) {
      e.printStackTrace();
    } catch (XMLParserException e) {
      e.printStackTrace();
    }
    DefaultShellCallback callback = new DefaultShellCallback(true);
    MyBatisGenerator myBatisGenerator = null;
    try {
      myBatisGenerator = new MyBatisGenerator(configuration,callback,warnings);
    } catch (InvalidConfigurationException e) {
      e.printStackTrace();
    }
    try {
      myBatisGenerator.generate(null);
    } catch (SQLException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    } catch (InterruptedException e) {
      e.printStackTrace();
    }
  }
}

這都是固定寫法,瞭解一下即可。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。