文/朱季谦
1.环境:SpringBoot
2.在pom.xml文件里引入相关依赖:
1 <plugin> 2 groupId>org.mybatis.generator</ 3 artifactId>mybatis-generator-maven-plugin 4 version>1.3.6 5 configuration 6 verbose>true 7 overwrite 8 9 dependencies10 dependency11 >MysqL12 >MysqL-connector-java13 >5.1.3614 15 16 17 18 19 20 21 22 23 >mybatis-generator-core24 25 >
3.创建generatorConfig.xml文件
<?xml version="1.0" encoding="UTF-8"?> 2 3 <!DOCTYPE generatorConfiguration 4 PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" 5 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" 6 7 generatorConfiguration 8 context id="testTables" targetRuntime="MyBatis3" 9 commentGenerator10 <!-- 是否去除自动生成的注释 true:是 : false:否 --> 11 property name="suppressAllComments" value="true" /> 12 13 数据库连接的信息:驱动类、连接地址、用户名、密码 14 jdbcConnection driverClass="com.MysqL.jdbc.Driver" 15 connectionURL="jdbc:MysqL://127.0.0.1:3306/example?useUnicode=true&characterEncoding=utf8" 16 userId="root" 17 password="123456"18 jdbcConnection20 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和 NUMERIC 类型解析为java.math.BigDecimal 22 javaTypeResolver23 ="forceBigDecimals"="false" 24 25 26 targetProject:生成PO类的位置 27 javaModelGenerator targetPackage="com.zhu.text.domain" 28 targetProject=".\src\main\java"29 enableSubPackages:是否让schema作为包的后缀 30 ="enableSubPackages"31 从数据库返回的值被清理前后的空格 32 ="trimStrings"33 javaModelGenerator34 targetProject:mapper映射文件生成的位置 35 sqlMapGenerator com.zhu.text.dao" 36 targetProject37 38 39 sqlMapGenerator40 targetPackage:mapper接口生成的位置 41 javaClientGenerator type="XMLMAPPER" 42 targetPackage="com.zhu.text.dao" targetProject43 44 45 javaClientGenerator46 指定数据库表 47 table tableName="text_product" domainObjectName="Product"></table48 context49 >
4.创建main类
import java.io.File; 2 java.util.ArrayList; java.util.List; 4 org.mybatis.generator.api.MyBatisGenerator; 5 org.mybatis.generator.config.Configuration; 6 org.mybatis.generator.config.xml.ConfigurationParser; org.mybatis.generator.internal.DefaultShellCallback; 8 9 public class MBGenerator { 10 static void main(String[] args) throws Exception{ 11 12 List<String> warnings = new ArrayList<String>(); boolean overwrite = true; 14 File configFile = new File("例:generatorConfig.xml的存放路径"); 15 ConfigurationParser cp = new ConfigurationParser(warnings); 16 Configuration config = cp.parseConfiguration(configFile); 17 DefaultShellCallback callback = DefaultShellCallback(overwrite); 18 MyBatisGenerator myBatisGenerator = MyBatisGenerator(config,callback,warnings); 19 myBatisGenerator.generate(null20 } 21 }
5.执行maven方法里的mybatis-generator:generate