目录
- MyBatis Generator
- targetRuntime=“MyBatis3Simple” 生成文件
- targetRuntime=“MyBatis3” 生成文件
- MyBatis Generator最完整配置详解
MyBatis源码及资料: https://github.com/coderZYGui/MyBatis-Study
MyBatis系列
- MyBatis — ORM思想、MyBatis概述、日志框架、OGNL
- MyBaits — MyBatis的CRUD操作、别名配置、属性配置、查询结果映射、Mapper组件、参数处理、注解开发
- MyBatis — 动态SQL、if、where、set、foreach、sql片段
- MyBatis — 对象关系映射、延迟加载、关联对象的配置选择
- MyBatis — 缓存机制、EhCache第三方缓存
- MyBatis — MyBatis Generator插件使用(配置详解)
跳转到目录 Mybatis Generator简称 MBG,是一个专门为 MyBatis和 ibatis框架使用者提供的代码生成器
。也可以快速的根据数据表生成对应的pojo类、Mapper接口、Mapper文件,甚至生成QBC风格的查询对象。
- 一般在项目中,根据MyBatis Generator的XML配置文件设置生成简单的CRUD,但是复杂的查询或者有关关联的操作还是需要我们写SQL完成。
pom.xml引出 mybatis-generator 坐标
org.slf4j
slf4j-api
1.7.25
org.mybatis.generator
mybatis-generator-core
1.3.7
一、使用 targetRuntime=“MyBatis3Simple” 生成对应文件
跳转到目录
1、导入generatorConfig.xml
文件
2、启动MyBatis Generator
使用 Java代码运行,也可使用 Maven插件运行
Generator类
package com.sunny.domain;
import java.io.InputStream;
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 Generator {
public static void main(String[] args) throws Exception {
//MBG执行过程中的警告信息
List warnings = new ArrayList();
//生成代码重复时,是否覆盖源代码
boolean override = false;
InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream("generatorConfig.xml");
ConfigurationParser cp = new ConfigurationParser(warnings);
Configuration config = cp.parseConfiguration(in);
DefaultShellCallback callback = new DefaultShellCallback(override);
//创建MBG
MyBatisGenerator mbg = new MyBatisGenerator(config, callback, warnings);
mbg.generate(null);
//输出警告信息
for (String warn : warnings) {
System.out.println(warn);
}
}
}
3、生成文件
跳转到目录 MyBatis3:默认的值,生成基于MyBatis3.x以上版本的内容,包括XXXBySample 把 MBG配置文件 那里改为 MyBatis3 即可,启动类一样.
生成目录如下:
- 使用QBC查询
/**
* 测试MBG的查询
*/
@Test
public void test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
User2Mapper user2Mapper = sqlSession.getMapper(User2Mapper.class);
User2Key user2Key = new User2Key();
user2Key.setId(1L);
User2 user2 = user2Mapper.selectByPrimaryKey(user2Key);
sqlSession.close();
}
三、MyBatis Generator最完整配置详解
跳转到目录
参考: MyBatis Generator