当前位置 博文首页 > Vicky_2020的博客:mybatis逆向工程

    Vicky_2020的博客:mybatis逆向工程

    作者:[db:作者] 时间:2021-08-31 19:22

    mybatis逆向工程主要是通过数据库中的数据表逆向生成对应的实体以及mapper。

    使用步骤如下:

    1、导入依赖和插件

    依赖:

    <dependency>
    	<groupId>org.mybatis.generator</groupId>
    	<artifactId>mybatis-generator-maven-plugin</artifactId>
    	<version>1.3.2</version>
    </dependency>
    <dependency>
    	<groupId>org.mybatis.generator</groupId>
    	<artifactId>mybatis-generator-core</artifactId>
    	<version>1.3.2</version>
    </dependency>
    

    插件:

    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>
    <plugin>
        <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-maven-plugin</artifactId>
        <version>1.3.2</version>
        <configuration>
            <verbose>true</verbose>
            <overwrite>true</overwrite>
            <!--此处填写gengrator.xml文件路径-->
            <configurationFile>
                 src/main/resources/generator.xml
            </configurationFile>
         </configuration>
    </plugin>
    

    2、在resources下创建generator.xml文件,并按要求填写

    <?xml version="1.0" encoding="UTF-8"?>
    
    <!DOCTYPE generatorConfiguration SYSTEM "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN">
    
    -<generatorConfiguration>
    
    <!--mysql 连接数据库jar 这里选择自己本地位置-->
    
    <classPathEntry location="C:\...\mysql\mysql-connector-java\8.0.26\mysql-connector-java-8.0.26.jar"/>
    
    -<context targetRuntime="MyBatis3" id="testTables">
    
    -<commentGenerator>
    
    <!-- 是否去除自动生成的注释 true:是 : false:否 -->
    
    <property value="true" name="suppressAllComments"/>
    
    </commentGenerator>
    
    <!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
    
    <jdbcConnection password="root" userId="root" connectionURL="jdbc:mysql://127.0.0.1:3306/data?serverTimezone=UTC" driverClass="com.mysql.jdbc.Driver"> </jdbcConnection>
    
    <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和 NUMERIC 类型解析为java.math.BigDecimal -->
    
    -<javaTypeResolver>
    
    <property value="false" name="forceBigDecimals"/>
    
    </javaTypeResolver>
    
    <!-- targetProject:生成PO类的位置 -->
    
    -<javaModelGenerator targetProject="src/main/java" targetPackage="com.it.pojo">
    
    <!-- enableSubPackages:是否让schema作为包的后缀 -->
    
    
    <property value="false" name="enableSubPackages"/>
    
    <!-- 从数据库返回的值被清理前后的空格 -->
    
    
    <property value="true" name="trimStrings"/>
    
    </javaModelGenerator>
    
    <!-- targetProject:mapper映射文件生成的位置如果maven工程只是单独的一个工程,targetProject="src/main/java" 若果maven工程是分模块的工程,targetProject="所属模块的名称",例如: targetProject="ecps-manager-mapper",下同-->
    
    -<sqlMapGenerator targetProject="src/main/resources" targetPackage="mapper">
    
    <!-- enableSubPackages:是否让schema作为包的后缀 -->
    
    
    <property value="false" name="enableSubPackages"/>
    
    </sqlMapGenerator>
    
    <!-- targetPackage:mapper接口生成的位置 -->
    
    -<javaClientGenerator targetProject="src/main/java" targetPackage="com.it.dao" type="XMLMAPPER">
    
    <!-- enableSubPackages:是否让schema作为包的后缀 -->
    
    <property value="false" name="enableSubPackages"/>
    
    </javaClientGenerator>
    
    <!-- 指定数据库表 多个表示,可用多个table标签-->
    
    <table selectByExampleQueryId="false" enableSelectByExample="false" enableDeleteByExample="false" enableUpdateByExample="false" enableCountByExample="false" domainObjectName="ChartConfig" tableName="chart_config"> </table>
    
    </context>
    
    </generatorConfiguration>

    3、双击插件运行逆向工程

    ?

    cs