MyBatis根据数据库表名称和字段逆向自动生成pojo类和mapper.xml文件

一:在eclipse中创建一个project文件:

二:在project文件里面创建一个lib文件夹,里面添加相应的jar包:


三:编写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.jdbc.Driver"  
            connectionURL="jdbc:mysql://adminmin:3306/imsp_db" userId="admin"  
            password="123456">  
        </jdbcConnection>  
        <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和   
            NUMERIC 类型解析为java.math.BigDecimal -->  
        <javaTypeResolver>  
            <property name="forceBigDecimals" value="false" />  
        </javaTypeResolver>  
  
        <!-- targetProject:生成PO类的位置 -->  
        <javaModelGenerator targetPackage="imsp.pojo"  
            targetProject=".\src">  
            <!-- enableSubPackages:是否让schema作为包的后缀 -->  
            <property name="enableSubPackages" value="false" />  
            <!-- 从数据库返回的值被清理前后的空格 -->  
            <property name="trimStrings" value="true" />  
        </javaModelGenerator>  
        <!-- targetProject:mapper映射文件生成的位置 -->  
        <sqlMapGenerator targetPackage="imsp.mapper"   
            targetProject=".\src">  
            <!-- enableSubPackages:是否让schema作为包的后缀 -->  
            <property name="enableSubPackages" value="false" />  
        </sqlMapGenerator>  
        <!-- targetPackage:mapper接口生成的位置 -->  
        <javaClientGenerator type="XMLMAPPER"  
            targetPackage="imsp.mapper"   
            targetProject=".\src">  
            <!-- enableSubPackages:是否让schema作为包的后缀 -->  
            <property name="enableSubPackages" value="false" />  
        </javaClientGenerator>  
        <!-- 指定要生成的数据库表 -->  
<!--         <table schema="" tableName="business_guide"></table>  
        <table schema="" tableName="policy_document"></table>  --> 
        <table schema="" tableName="attachment"></table>  
  
    </context>  
</generatorConfiguration>  


四:在src下面创建methed包,并在包下创建GeneratorSqlmap.java类:

package method;

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

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;

/**
 * @ClassName: GeneratorSqlmap.java
 * @Description:
 * @Author:   	created by chengxiang
 * @CreateTime: 2018年3月1日--下午8:00:49
 * @UpdateAuthor:
 * @UpdateTime:
 */
public class GeneratorSqlmap {

    public void generator() throws Exception{  
    	  
        List<String> warnings = new ArrayList<String>();  
        boolean overwrite = true;  
        //指定 逆向工程配置文件  
        File configFile = new File("generatorConfig.xml");   
        ConfigurationParser cp = new ConfigurationParser(warnings);  
        Configuration config = cp.parseConfiguration(configFile);  
        DefaultShellCallback callback = new DefaultShellCallback(overwrite);  
        MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config,  
                callback, warnings);  
        myBatisGenerator.generate(null);  
        System.out.println("正在生成文件。。。。");
  
    }   
    public static void main(String[] args) throws Exception {  
        try {  
            GeneratorSqlmap generatorSqlmap = new GeneratorSqlmap();  
            generatorSqlmap.generator();  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
          System.out.println("生成pojo文件完毕!");
    }
}

五:添加log4j.properties文件

log4j.rootLogger=DEBUG, Console  
#Console  
log4j.appender.Console=org.apache.log4j.ConsoleAppender  
log4j.appender.Console.layout=org.apache.log4j.PatternLayout  
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n  
log4j.logger.java.sql.ResultSet=INFO  
log4j.logger.org.apache=INFO  
log4j.logger.java.sql.Connection=DEBUG  
log4j.logger.java.sql.Statement=DEBUG  
log4j.logger.java.sql.PreparedStatement=DEBUG  

六:用法:

1:环境配置好后,检查自己的数据库连接,要生成的数据库表名称

2:直接运行GeneratorSqlmap.java类中的main方法,最后刷新一下项目,即可得到相应的pojo类和mapper文件


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值