IDEA05 mybatis插件之MyBatisCodeHelper-Pro
前提准备:
》IDEA专业版本

1 安装MyBatisCodeHelper-Pro
IDEA提供了插件安装功能,可以根据开发需要安装适合的插件
》help -> find action(快捷键:ctrl + shift + A) -->> 搜索 plugins -->> 选择setting里面的plugins

》搜索并安装你需要的插件

》搜索MyBatisCodeHelper-Pro插件示例(由于我已经安装过了,所以右边是一个uninstall的灰色按钮)

》安装完毕后重启IDEA
》技巧01:没有激活的MyBatisCodeHelper-Pro插件会在事件log窗口中弹出一个日志,如下所示

2 基本使用(未激活时可以使用的功能)
2.1 mapper接口和mapper文件之间的相互跳转
单击左边的图标就可以实现mapper接口和mapper文件之间对应方法的跳转功能

技巧01:左边的图标是可以进行更改的,setting -> other settings -> MyBatisCodeHelper-Pro -> mapper icon

2.2 自动重构
修改mapper映射文件中的标签的id属性值后,mapper接口中的对应方法名会自动进行修改,而且反之亦然
技巧01:将光标放到mapper映射文件中的标签的id属性值上或者mapper接口的方法名上,按 shift + F6 后就可以进行修改啦,修改完成后再按回车按钮进行确认操作
快捷键:shift + F6
2.3 自动补全功能
编辑mapper映射文件中的内容时会自动进行补全操作
2.4 一键删除操作
mapper映射文件和mapper接口中有不对应时,mapper映射文件中的内容会变成灰色,mapper接口中的内容会变成红色;此时将光标放到这些区域按 alt + enter 后就可以选择补全对应代码或者进行一键删除操作
3 激活MyBatisCodeHelper-Pro插件
3.1 进入事件log窗口

3.2 获取激活码
单击 here 标签就会进入到购买激活码页面
3.3 单击 enter key 标签
单击后会弹出一个弹出框,录入二维码即可激活
技巧01:激活后,之前事件log窗口中的 enter key 和 here 标签就会变成灰色的

4 MyBatisCodeHelper-Pro高级用法
4.1 根据java实体类生成基本的CRUD
》创建一个实体类
坑01:实体类中的属性不能是pulbic或static修饰,所系下面实体类中的会报一个错,只需要将@Slf4j注解暂时去掉,生成完代码后再加上即可
PS:其实实体类中根本就不需要添加@Slf4j注解,只是三少习惯性的加上了一个而已

》在实体类上按 alt + insert 组合键 -> generate mybatis files
注意:会弹出一个弹出框来选择是重新生成代码,还是更新代码;
坑01:如果是实体类增加了字段后选择更新代码的话,只会对默认的insert,insertList,update方法进行更新,其余自定义的方法都不会更新


》sql配置和生成代码配置

》生成的持久层(mapper接口文件)
说明:默认只会生成CRUD

4.2 根据mapper接口名自动生成mapper映射文件中对应的标签
坑01:必须先生成基本的CRUD后才可以对自定义方法自动生成对应的mapper映射文件中的标签
例如:根据id查询教师信息
》在mapper接口写一个名为 findById 的方法名即可
》选中findById -> 右键 -> generate mybatis xml -> 就会自动补全mapper接口中findById方法的返回值和参数,并自动生成对应mapper映射文件中的标签

4.3 根据数据源生成mapper映射文件和mapper接口的CRUD
4.3.1 利用IDEA连接数据库
打开database工具窗口:view -> tool windows -> database

4.3.2 添加数据源
database -> +图标 -> Data Srouce -> MySQL -> 填写数据库的相关连接信息

4.3.3 生成CRUD
选中一张表 -> 右键 -> mybatis generator

4.3.4 实体类配置和存放位置配置

5 其他生成功能
5.1 根据mapper接口生成mapper映射文件
创建一个接口 -> 光标放到接口名上 -> alt + enter -> generate mybatis mapper for current class -> 选择mapper映射文件位置

5.2 一键添加@param注解
光标放到mapper映射文件方法名上 -> alt + enter -> add mybatis param annotation

5.3 生成mapper映射文件中resultMap未使用的字段
光标放到resultmap标签type属性值上 -> alt + enter -> generate unUsed properties

6 参考资料
6.1 MyBatisCodeHelper-Pro官方资料
6.2 IDEA基础教程

IDEA05 mybatis插件之MyBatisCodeHelper-Pro的更多相关文章
- 如何在IDEA上 添加GIT和maven、mybatis插件
IDEA工具上,添加GIT和maven.mybatis插件,相对比较简单: 首先下载GIT.maven.mybatis. 先添加GIT插件: 首先在IDEA找到file中找到setting,然后搜索g ...
- Intelij IDEA 2016.3安装mybatis插件并激活教程
转载自:http://blog.csdn.net/solo_talk/article/details/53540449 现在Mybatis框架越来越受欢迎,Intelij IDEA这个编辑器逐渐成为很 ...
- 关于使用mybatis插件自动生成代码
1.安装 mybatis 插件: 在 eclipse 中 点击 help-->Install New Software...--> Add --> local 选择插件中eclip ...
- intellij IDEA mybatis插件破解方法
1>安装mybatis插件,找到mybatis_plus.jar包的位置,在C:\Users\LZHL\.IntelliJIdea2016.3\config\plugins\mybatis_pl ...
- MyBatis7:MyBatis插件及示例----打印每条SQL语句及其执行时间
Plugins 摘一段来自MyBatis官方文档的文字. MyBatis允许你在某一点拦截已映射语句执行的调用.默认情况下,MyBatis允许使用插件来拦截方法调用 Executor(update.q ...
- Mybatis插件原理分析(二)
在上一篇中Mybatis插件原理分析(一)中我们主要介绍了一下Mybatis插件相关的几个类的源码,并对源码进行了一些解释,接下来我们通过一个简单的插件实现来对Mybatis插件的运行流程进行分析. ...
- Mybatis插件原理分析(一)
我们首先介绍一下Mybatis插件相关的几个类,并对源码进行了简单的分析. Mybatis插件相关的接口或类有:Intercept.InterceptChain.Plugin和Invocation,这 ...
- Mybatis插件机制以及PageHelper插件的原理
首先现在已经有很多Mybatis源码分析的文章,之所以重复造轮子,只是为了督促自己更好的理解源码. 1.先看一段PageHelper拦截器的配置,在mybatis的配置文件<configurat ...
- mybatis插件机制
目录 mybatis插件机制 主要 类/接口 和 方法 mybatis插件机制实现 mybatis插件机制 mybatis的插件机制使用动态代理实现,不了解的朋友请先了解代理模式和动态代理:插件本质是 ...
随机推荐
- EditPlus 3.41 p1115 0728注册码
EditPlus (2012-7-28 epp341p1115_0728) 注册码: 注册名:Free User 注册码:6AC8D-784D8-DDZ95-B8W3A-45TFA 注册名:Www.S ...
- Debian初识(选择最佳镜像发布站点加入source.list文件)
选择最佳镜像发布站点加入source.list文件:netselect,netselect-apt “该将哪个Debian镜像发布站点加入source.list文件?”.有很多方法来选择镜像发布站点, ...
- 研究ecmall一些流程、结构笔记 (转)
index.phpECMall::startup() //ecmall.php object //所有类的基础类 ecmall.phpBaseApp //控制器基础类 app.base.phpECBa ...
- CF 1093G Multidimensional Queries——线段树(消去绝对值符号)
题目:http://codeforces.com/contest/1093/problem/G 只好看看题解:https://codeforces.com/blog/entry/63877 主要是把绝 ...
- laravel的auth用户认证的例子
参考http://www.cnblogs.com/yjf512/p/4042356.html 需要注意的是,生成的测试数据,password部分必须用laravel自带的hash一下 Hash::ma ...
- Python文件操作,with open as追加文本内容实例
最常见的读写操作 import re with open('/Users/Mr.Long/Desktop/data.txt', 'w') as f: f.write('hello world') 就这 ...
- 纯css实现点击事件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- shelve模块(超级好用~!)
''' python中的shelve模块,可以提供一些简单的数据操作 他和python中的dbm很相似. 区别如下: 都是以键值对的形式保存数据,不过在shelve模块中, key必须为字符串,而值可 ...
- windows下mysql定时备份
场景:一套B/S小系统,租用了一个虚拟服务器windows 2003,数据库是mysql,做每天的数据库备份 1.关于windows下的定时任务执行 * 命令说明 - /sc 指定计划类型,取 ...
- 《Java核心技术》 -- 读书笔记 ② - 类 | 对象 | 接口
对象vs对象变量 “对象” 描述的是一个类的具体实例,他被java虚拟机分配在 "堆" (Heap)中. “对象变量” 为一个对象的引用(对象变量的值=记载着具体对象的位置/地址) ...