zoukankan      html  css  js  c++  java
  • mybatis自动生成mapper.xml文件,model文件

    1. 首先我们新建一个genneratorConfigMysql.xml文件, 把里面的数据库,用户名,数据库表都进行相应的替换,

    domainObjectName是要生成的model文件名称
    tableName 数据库表名
    <?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="MySqlContext" targetRuntime="MyBatis3Simple" defaultModelType="flat">
            <property name="beginingDelimiter" value="`"/>
            <property name="endingDelimiter" value="`"/>
            <commentGenerator>
                <property name="supressDate" value="true"/>
                <property name="addRemarkComments" value="true"/>
            </commentGenerator>
            
            <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                connectionURL="jdbc:mysql://xxxx?characterEncoding=utf8" userId="xxxx"
                password="xxxx" >
            </jdbcConnection>
            <javaModelGenerator targetPackage="test.qa.model" targetProject="src/main/java">
                <property name="trimStrings" value="true"/>
            </javaModelGenerator>
            <sqlMapGenerator targetPackage="mybatis" targetProject="src/main/resources/"/>
            <javaClientGenerator type="XMLMAPPER" targetPackage="test.ke.dao" targetProject="src/main/java"/>
            <table tableName="xxxx"  domainObjectName="xxxx"/>
        </context>
    </generatorConfiguration>
    View Code

    2. 新建一个java文件,如下所示,运行即可生成对应的mapper.xml文件,model文件. 需要生成其他的数据库表的时候,只要替换genneratorConfigMysql.xml文件中的数据库表名和要生成的model文件名即可

    package test.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.InputStream;
    import java.util.ArrayList;
    import java.util.List;
    
    /**
     * 生成model文件和xml文件。 需要修改generatorConfigMySql.xml文件中的表和数据库
     */
    public class Generator {
        public static void main(String[] args) throws Exception{
            List<String> warnings = new ArrayList<>();
            boolean overwrite = true;
            InputStream is = Generator.class.getResourceAsStream("/generatorConfigMySql.xml");
            if(is == null){
                System.out.println("null");
            }
            ConfigurationParser cp = new ConfigurationParser(warnings);
            Configuration config = cp.parseConfiguration(is);
            is.close();
            DefaultShellCallback callback = new DefaultShellCallback(overwrite);
            MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
            myBatisGenerator.generate(null);
            for(String warning : warnings){
                System.out.println(warning);
            }
    
        }
    }
    

      

  • 相关阅读:
    Encrypted Handshake Message
    RSAParameters Struct
    What if JWT is stolen?
    What's the difference between JWTs and Bearer Token?
    RSA Algorithm Example
    第18届Jolt大奖结果公布
    Ruby on rails开发从头来(windows)(三十六) 调试技巧
    Ruby on rails开发从头来(四十二) ActiveRecord基础(主键和ID)
    YouTube开放基础技术架构 让用户建自家YouTube
    Ruby on rails开发从头来(四十) ActiveRecord基础(Boolean属性)
  • 原文地址:https://www.cnblogs.com/leavescy/p/11240445.html
Copyright © 2011-2022 走看看