关于Mac配置逆向工程

除了有关路径的写法不同,其余一致

Mac:src/main/java

Windows:src\main\java

1.jar包导入

plugin自行放入即可

XML 复制代码
        <!--逆向工程-->
        <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-core</artifactId>
            <version>1.3.5</version>
        </dependency>

            <!-- 逆向工程 -->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.5</version>
                <dependencies>
                    <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>8.0.20</version>
                    </dependency>
                </dependencies>
                <configuration>
                    <!--配置文件的路径-->
                    <configurationFile>
                        src/main/resources/generatorConfig.xml
                    </configurationFile>
                    <overwrite>true</overwrite>
                </configuration>
            </plugin>

2.generatorConfig.xml

路径为:src//main//resources//generatorConfig.xml

和application.yml路径一致

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>
    <context id="testTables" targetRuntime="MyBatis3">
        <commentGenerator>
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="true" />
        </commentGenerator>
        <!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/test" userId="root"
                        password="12345678">
        </jdbcConnection>
        <!-- <jdbcConnection driverClass="oracle.jdbc.OracleDriver"
           connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:yycg"
           userId="yycg"
           password="yycg">
        </jdbcConnection> -->

        <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和
           NUMERIC 类型解析为java.math.BigDecimal -->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>

        <!-- 注意生成的路径
              Mac:./src/main/java
              window:.\src\main\java
          -->

        <!-- targetProject:生成PO类的位置 -->
        <javaModelGenerator targetPackage="com.func.pojo"
                            targetProject="./src/main/java">
            <!-- enableSubPackages:是否让schema作为包的后缀 -->
            <property name="enableSubPackages" value="false" />
            <!-- 从数据库返回的值被清理前后的空格 -->
            <property name="trimStrings" value="true" />
        </javaModelGenerator>
        <!-- targetProject:mapper映射文件生成的位置 -->
        <sqlMapGenerator targetPackage="com.func"
                         targetProject="./src/main/resources/mappers">
            <!-- enableSubPackages:是否让schema作为包的后缀 -->
            <property name="enableSubPackages" value="false" />
        </sqlMapGenerator>
        <!-- targetPackage:mapper接口生成的位置 -->
        <javaClientGenerator type="XMLMAPPER"
                             targetPackage="com.func.mapper"
                             targetProject="./src/main/java">
            <!-- enableSubPackages:是否让schema作为包的后缀 -->
            <property name="enableSubPackages" value="false" />
        </javaClientGenerator>
        <!-- 指定数据库表 -->
        <!--   <table schema="" tableName="sys_user"></table>
                  <table schema="" tableName="orders"></table> -->
        <table schema="" tableName="user_info"></table>
<!--        <table schema="" tableName="tb_content_category"></table>-->
<!--        <table schema="" tableName="tb_item"></table>-->
<!--        <table schema="" tableName="tb_item_cat"></table>-->
<!--        <table schema="" tableName="tb_item_desc"></table>-->
<!--        <table schema="" tableName="tb_item_param"></table>-->
<!--        <table schema="" tableName="tb_item_param_item"></table>-->
<!--        <table schema="" tableName="tb_order"></table>-->
<!--        <table schema="" tableName="tb_order_item"></table>-->
<!--        <table schema="" tableName="tb_order_shipping"></table>-->
<!--        <table schema="" tableName="tb_user"></table>-->

        <!-- 有些表的字段需要指定java类型
         <table schema="" tableName="sys_user">
           <columnOverride column="user_id" javaType="Long" />
        </table> -->
    </context>
</generatorConfiguration>

3.创建一个工具类GeneratorUtil

java 复制代码
package com.func.util;

import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.internal.DefaultShellCallback;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class GeneratorUtil {
    public static void main(String[] args) throws Exception {
        //mac用//,window用\\
        File f = new File("src//main//resources//generatorConfig.xml");
        List<String> warnings = new ArrayList<String>();
        ConfigurationParser cp = new ConfigurationParser(warnings);
        Configuration config = cp.parseConfiguration(f);
        DefaultShellCallback callBack = new DefaultShellCallback(true);
        MyBatisGenerator generator = new MyBatisGenerator(config, callBack, warnings);
        generator.generate(null);
    }
}

在XML里写好表名,执行该类即可

相关推荐
pan_junbiao12 分钟前
Spring框架的设计模式
java·spring·设计模式
远方160912 分钟前
0x-2-Oracle Linux 9上安装JDK配置环境变量
java·linux·oracle
北执南念18 分钟前
CompletableFuture+线程池使用案列
java
黄交大彭于晏1 小时前
发送文件脚本源码版本
java·linux·windows
钮钴禄·爱因斯晨1 小时前
Java 面向对象进阶之多态:从概念到实践的深度解析
java·开发语言·数据结构
鸽子炖汤1 小时前
Java中==和equals的区别
java·开发语言·jvm
hstar95271 小时前
二、即时通讯系统设计经验
java·架构
风象南2 小时前
SpringBoot的4种死信队列处理方式
java·spring boot·后端
互联网全栈架构3 小时前
遨游Spring AI:第一盘菜Hello World
java·人工智能·后端·spring
优秀的颜4 小时前
计算机基础知识(第五篇)
java·开发语言·分布式