1. 程式人生 > 其它 >Maven聚合工程中的SpringBoot應用整合tkMapper——逆向工程

Maven聚合工程中的SpringBoot應用整合tkMapper——逆向工程

聚合工程專案結構

各個子工程的依賴關係

mapper依賴beans

service依賴mapper 和 common

api依賴service

1、在beans子工程中引入tkMapper的starter啟動器

<!-- tkMapper starter -->
<dependency>
     <groupId>tk.mybatis</groupId>
     <artifactId>mapper-spring-boot-starter</artifactId>
     <version>2.1.5</
version> </dependency>

2、在mapper子工程中匯入tkMapper逆向工程外掛


<!-- 匯入tkMapper逆向工程外掛 -->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.5</version>
<!-- 載入逆向工程的配置檔案 -->
<configuration>
<configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
</configuration>
<!-- 新增相關依賴 -->
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper</artifactId>
<version>3.4.4</version>
</dependency>
</dependencies>
</plugin>

3、在mapper子工程的類路徑src/main/java下新建一個general包,在包內建立一個GeneralDAO介面,並繼承 Mapper介面 MysqlMapper介面

package com.lzp.fmmall.general;

import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.common.MySqlMapper;

public interface GeneralDAO<T> extends Mapper<T>, MySqlMapper<T> {
}

4、在mapper子工程的類路徑src/main/resources下新建一個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="jdbc.properties" />-->
    <context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat">
        <property name="beginningDelimiter" value="`"/>
        <property name="endingDelimiter" value="`"/>
        <!--配置GeneralDAO -->
        <plugin type="tk.mybatis.mapper.generator.MapperPlugin">
            <property name="mappers" value="com.lzp.fmmall.general.GeneralDAO"/>
        </plugin>
        <!-- 配置資料庫連線 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/fmmall?characterEncoding=utf-8"
                        userId="root"
                        password="123">
        </jdbcConnection>
        <!-- 配置實體類存放路徑 -->
        <javaModelGenerator targetPackage="com.lzp.fmmall.entity"
                            targetProject="src/main/java"/>
        <!-- 配置 XML 存放路徑 -->
        <sqlMapGenerator targetPackage="/" targetProject="src/main/resources/mappers"/>
        
        <!-- 配置 DAO 存放路徑 -->
        <javaClientGenerator targetPackage="com.lzp.fmmall.dao" targetProject="src/main/java" type="XMLMAPPER"/>
        
        <!--配置置需要指定生成的資料庫和表,%代表所有表-->
        <table tableName="%">
        </table>
    </context>
</generatorConfiguration>

5、在mapper子工程的pom檔案裡面引入GeneratorConfig.xml配置檔案

6、開啟專案右側的Maven欄,就可以看到整個工程的依賴管理

7、最後看到我們mapper子工程下自動生成了實體類、Mapper介面以及Mapper對映檔案,不過我們要把實體類移動到beans子工程下

到此,我們的逆向工程就構建完成了。