1. 准备工作
mybatis-generator-core-1.3.5.jar
generator.xml
测试类
generator.xml:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE generatorConfiguration 3 PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" 4 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> 5 <generatorConfiguration> 6 <context id="DB2Tables" targetRuntime="MyBatis3"> 7 <commentGenerator> 8 <!-- 9 suppressAllComments属性值: 10 true:自动生成实体类、SQL映射文件时没有注释 11 true:自动生成实体类、SQL映射文件,并附有注释 12 --> 13 <property name="suppressAllComments" value="true" /> 14 </commentGenerator> 15 16 17 <!-- 数据库连接信息 --> 18 <jdbcConnection driverClass="com.mysql.jdbc.Driver" 19 connectionURL="jdbc:mysql://127.0.0.1:3306/stu" 20 userId="root" password="gubin"> 21 </jdbcConnection> 22 <!-- 23 forceBigDecimals属性值: 24 true:把数据表中的DECIMAL和NUMERIC类型, 25 解析为JAVA代码中的java.math.BigDecimal类型 26 false(默认):把数据表中的DECIMAL和NUMERIC类型, 27 解析为解析为JAVA代码中的Integer类型 28 --> 29 <javaTypeResolver> 30 <property name="forceBigDecimals" value="false" /> 31 </javaTypeResolver> 32 <!-- 33 targetProject属性值:实体类的生成位置 34 targetPackage属性值:实体类所在包的路径 35 --> 36 <javaModelGenerator targetPackage="com.hxzy.entity" 37 targetProject=".\src"> 38 <!-- trimStrings属性值: 39 true:对数据库的查询结果进行trim操作 40 false(默认):不进行trim操作 41 --> 42 <property name="trimStrings" value="true" /> 43 </javaModelGenerator> 44 <!-- 45 targetProject属性值:SQL映射文件的生成位置 46 targetPackage属性值:SQL映射文件所在包的路径 47 --> 48 <sqlMapGenerator targetPackage="com.hxzy.mapper" 49 targetProject=".\src"> 50 </sqlMapGenerator> 51 <!-- 生成动态代理的接口 --> 52 <javaClientGenerator type="XMLMAPPER" targetPackage="com.hxzy.mapper" targetProject=".\src"> 53 </javaClientGenerator> 54 55 <!-- 指定数据库表 --> 56 <table tableName="student"> </table> 57 <table tableName="teacher"></table> 58 </context> 59 </generatorConfiguration>
mybatis-generator-core-1.3.5.jar : 下载链接 mvn库下载:
https://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator-core/1.3.5
测试类:
package com.hxzy.test; 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; public class Test { public static void main(String[] args)throws Exception { 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); } }
测试成功: