4 逆向工程

1 逆向工程
框架需要:实体类、自定义接口、.xml
传统的开发中上述的三个组件需要开发者手动创建,逆向工程可以帮助开发者来自动创建三个组件,减轻开发者的工作量,提高工作效率 。

4 逆向工程

文章插图
2 如何使用
,简称 MBG,是一个专门为框架开发者定制的代码生成器,可自动生成框架所需的实体类、 接口、.xml,支持基本的 CRUD 操作,但是一些相对复杂的 SQL 需要开发者自己来完成 。
4.0.0com.southwindaimbg1.0-SNAPSHOT1717org.mybatismybatis3.4.5mysqlmysql-connector-java8.0.11org.mybatis.generatormybatis-generator-maven-plugin1.3.2org.mybatis.generatormybatis-generator-core1.3.2
4 逆向工程

文章插图
targetPackage="com.southwind.repository" targetProject="./src/main/java">
【4 逆向工程】package com.southwind.test;import org.mybatis.generator.api.MyBatisGenerator;import org.mybatis.generator.config.Configuration;import org.mybatis.generator.config.xml.ConfigurationParser;import org.mybatis.generator.exception.InvalidConfigurationException;import org.mybatis.generator.exception.XMLParserException;import org.mybatis.generator.internal.DefaultShellCallback;import java.io.File;import java.io.IOException;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;public class Main {public static void main(String[] args) {List warings = new ArrayList();boolean overwrite = true;String genCig = "/generatorConfig.xml";File configFile = new File(Main.class.getResource(genCig).getFile());ConfigurationParser configurationParser = newConfigurationParser(warings);Configuration configuration = null;try {configuration = configurationParser.parseConfiguration(configFile);} catch (IOException e) {e.printStackTrace();} catch (XMLParserException e) {e.printStackTrace();}DefaultShellCallback callback = new DefaultShellCallback(overwrite);MyBatisGenerator myBatisGenerator = null;try {myBatisGenerator = newMyBatisGenerator(configuration, callback, warings);} catch (InvalidConfigurationException e) {e.printStackTrace();}try {myBatisGenerator.generate(null);} catch (SQLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} catch (InterruptedException e) {e.printStackTrace();}}}