mybatis-generator自动生成(一)


1、创建javaSE项目mybatis-generator,导入以下jar包,项目结构如图所示:

2、在类路径下添加log4j.properties文件

 1 log4j.rootLogger=DEBUG, Console
 2 #Console
 3 log4j.appender.Console=org.apache.log4j.ConsoleAppender
 4 log4j.appender.Console.layout=org.apache.log4j.PatternLayout
 5 log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
 6 log4j.logger.java.sql.ResultSet=INFO
 7 log4j.logger.org.apache=INFO
 8 log4j.logger.java.sql.Connection=DEBUG
 9 log4j.logger.java.sql.Statement=DEBUG
10 log4j.logger.java.sql.PreparedStatement=DEBUG

 3、创建GeneratorSqlmap类

 1 import java.io.File;
 2 import java.util.ArrayList;
 3 import java.util.List;
 4 
 5 import org.mybatis.generator.api.MyBatisGenerator;
 6 import org.mybatis.generator.config.Configuration;
 7 import org.mybatis.generator.config.xml.ConfigurationParser;
 8 import org.mybatis.generator.internal.DefaultShellCallback;
 9 
10 public class GeneratorSqlmap {
11     public void generator() throws Exception{
12         List warnings = new ArrayList();
13         boolean overwrite = true;
14         //指定 逆向工程的配置文件
15         File configFile = new File("generatorConfig.xml"); 
16         ConfigurationParser cp = new ConfigurationParser(warnings);
17         Configuration config = cp.parseConfiguration(configFile);
18         DefaultShellCallback callback = new DefaultShellCallback(overwrite);
19         MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
20         myBatisGenerator.generate(null);
21     } 
22 
23     public static void main(String[] args) throws Exception {
24         try {
25             GeneratorSqlmap generatorSqlmap = new GeneratorSqlmap();
26             generatorSqlmap.generator();
27         } catch (Exception e) {
28             e.printStackTrace();
29         }
30     }
31     
32 }

4、类路径下创建generatorConfig.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>
            
            <property name="suppressAllComments" value="true" />
        commentGenerator>
        
        
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
            connectionURL="jdbc:mysql://xxx.xxx.xxx.xxx:3306/hfyz_spoc?useUnicode=true&characterEncoding=UTF-8" userId="root"
            password="xxxx">
            
        jdbcConnection>


        
        <javaTypeResolver>
            <property name="forceBigDecimals" value="true" />
        javaTypeResolver>

        
        <javaModelGenerator targetPackage="xxxxxx"
            targetProject="./src">
            
            <property name="enableSubPackages" value="false" />
            
            <property name="trimStrings" value="false" />
        javaModelGenerator>
        
        
        <sqlMapGenerator targetPackage="/mybatis"
            targetProject="./src">
            
            <property name="enableSubPackages" value="false" />
        sqlMapGenerator>
        
        
        <javaClientGenerator type="XMLMAPPER"
            targetPackage="xxxxxx" targetProject="./src">
            
            <property name="enableSubPackages" value="false" />
        javaClientGenerator>
        
        
        
        
    <table tableName="course_price"
        domainObjectName="CoursePrice" 
        enableCountByExample="false"
        enableUpdateByExample="false"
        enableDeleteByExample="false"
        enableSelectByExample="false" 
        selectByExampleQueryId="false">table>
        

     
    context>
generatorConfiguration>