环境:mac idea mysql mybatis-generator1.4.0
一、通过 java 编码和 xml 配置文件运行generator======> targetRuntime="MyBatis3"
1、配置 xml 文件,把该文件夹放到 project 根目录下
/p>
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
generator config xml
**注意:以上的配置文件中会生成PojoExample.java,并且生成方法,如果希望去掉,需要在
enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="false" enableUpdateByExample="false" selectByExampleQueryId="false"
2、targetPackage 属性的定义为生成的包,可以不用事先在项目中创建文件夹,在逆向工程时,会自动创建包
3、逆向工程的代码
importorg.mybatis.generator.api.MyBatisGenerator;importorg.mybatis.generator.config.Configuration;importorg.mybatis.generator.config.xml.ConfigurationParser;importorg.mybatis.generator.exception.InvalidConfigurationException;importorg.mybatis.generator.exception.XMLParserException;importorg.mybatis.generator.internal.DefaultShellCallback;importjava.io.File;importjava.io.IOException;importjava.sql.SQLException;importjava.util.ArrayList;importjava.util.List;
@SuppressWarnings("ConstantConditions")public classMybatisGenerator {public static boolean generator() throwsInterruptedException, SQLException, IOException {boolean result = false;
List warnings = new ArrayList<>();//如果已经存在生成过的文件是否进行覆盖
boolean overwrite = true;
File configFile= new File("mbg.xml");
ConfigurationParser cp= newConfigurationParser(warnings);
Configuration config= null;try{
config=cp.parseConfiguration(configFile);
}catch(IOException e) {
result= false;
e.printStackTrace();
}catch(XMLParserException e) {
result= false;
e.printStackTrace();
}
DefaultShellCallback callback= newDefaultShellCallback(overwrite);
MyBatisGenerator generator= null;try{
generator= newMyBatisGenerator(config, callback, warnings);
}catch(InvalidConfigurationException e) {
result= false;
e.printStackTrace();
}
generator.generate(null);returnresult;
}
}
逆向工程生成代码
4、需要的jar 包
二、通过 java 编码和 xml 配置文件运行generator======> targetRuntime="MyBatis3DynamicSql" 该设置为 default
1、需要引入新 jar 包:javax.annotation 和 dynamic-sql
javax.annotation
javax.annotation-api
1.3.2
org.mybatis.dynamic-sql
mybatis-dynamic-sql
1.1.4
2、修改 xml 文件
1??. javaClientGenerator 标签,采用 annotation模式
2??.去掉配置文件中 sqlMapGenerator 标签,该标签在动态sql模式下不起作用
原文:https://www.cnblogs.com/KennyWang0314/p/12262788.html