MyBatis逆向工程自动生成代码

Posted 岚者小轩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MyBatis逆向工程自动生成代码相关的知识,希望对你有一定的参考价值。

MyBatis逆向工程根据数据库表自动生成mapper.xml,entity类,mapper类,简直不要 太方便好嘛

下面贴上关键配置代码,以免以后找不到

generator.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="db.properties"/>                            //根据自己情况改
    <context id="DB2Tables" targetRuntime="MyBatis3">
        <commentGenerator>
            <!--
            suppressAllComments属性值:
                true:自动生成实体类、SQL映射文件时没有注释
                false:自动生成实体类、SQL映射文件,并附有注释
          -->
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>


        <!-- 数据库连接信息 -->
        <jdbcConnection driverClass="${driver}"
                        connectionURL="${url}"
                        userId="${username}" password="${password}">
        </jdbcConnection>
        <!-- 
            forceBigDecimals属性值: 
                true:把数据表中的DECIMAL和NUMERIC类型,
解析为JAVA代码中的java.math.BigDecimal类型 
                false(默认):把数据表中的DECIMAL和NUMERIC类型,
解析为解析为JAVA代码中的Integer类型 
        -->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!-- 
        targetProject属性值:实体类的生成位置  
        targetPackage属性值:实体类所在包的路径
    -->
        <javaModelGenerator targetPackage="org.spring.entity"                
                            targetProject=".src">         //根据自己情况改
            <!-- trimStrings属性值:
            true:对数据库的查询结果进行trim操作
            false(默认):不进行trim操作       
          -->
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!-- 
        targetProject属性值:SQL映射文件的生成位置  
        targetPackage属性值:SQL映射文件所在包的路径
    -->
        <sqlMapGenerator targetPackage="org.spring.mapper"              
                         targetProject=".src">           //根据自己情况改
        </sqlMapGenerator>
        <!-- 生成动态代理的接口  -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="org.spring.mapper" targetProject=".src">   //根据自己情况改
        </javaClientGenerator>

        <!-- 指定数据库表  -->
        <table tableName="Student"></table>             //根据哪些类来建立

    </context>
</generatorConfiguration>

Test类中运行部分

 

 File file = new File("src/generator.xml") ;//配置文件

        List<String> warnings = new ArrayList<>();
        ConfigurationParser cp = new ConfigurationParser(warnings);

        Configuration config = cp.parseConfiguration(file);


        DefaultShellCallback callBack = new DefaultShellCallback(true);
        /**
         * 逆向工程生成核心类
         */
        MyBatisGenerator generator = new MyBatisGenerator(config, callBack,warnings  );
        generator.generate(null);

 

以上是关于MyBatis逆向工程自动生成代码的主要内容,如果未能解决你的问题,请参考以下文章

使用Mybatis的逆向工程自动生成代码

mybatis逆向工程--自动生成实体代码(mybatis-generator)

MyBatis-Plus逆向生成代码

MyBatis-Plus逆向生成代码

Maven中Mybatis逆向工程的使用(自动生成代码)

mybatis逆向工程(Generator)自动生成mapperxml实体类的实现代码