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的插件机制使用动态代理实现,不了解的朋友请先了解代理模式和动态代理:插件本质是 ...
随机推荐
- java之集合概述
集合也称容器:从大的类别分成两类:Collection和Map,也即:单列和双列列表. java编程思想中一张图说明该体系的整体结构:其中黑色着重的类是经常使用的类. 1 Collection Col ...
- VLOOKUP函数使用
跟财务老婆学习了个excel函数 -- vlookup函数,记录一下,省得下次用忘了. 需求:有两张表,将第一张表的第二个字段g2去搜索第二张表的字段d2,如果相等,将第二张表的第三个字段追加到第一张 ...
- python+anaconda+pycharm工具包安装
更新额外包 $ conda update conda 更新pip python -m pip install --upgrade pip 更新所有 conda update --all 安装ffmpe ...
- Spark的CombineByKey
combineBykey关键是要明白里面的三个函数: 1. 当某个key第一次出现的时候,走的是第一个函数(createCombin):A function that creates a combin ...
- (一)Fiddler的介绍和安装
一.Fiddler的介绍和安装 Fildder是一款免费的web调试代理工具,支持任何浏览器.系统或平台. 官网地址:https://www.telerik.com/fiddler Fiddler原理 ...
- sphinx-1.3.0扩展在pPHP 7.0.7版本编译不通过
在这个网友也是在php7上面编译插件不通过 https://bugs.php.net/bug.php?id=71586 下php7对应的扩展文件即可 http://git.php.net/?p=pec ...
- 1、spark集群搭建
前提:已经搭建完全分布式的Hadoop集群,请参看http://www.cnblogs.com/netbloomy/p/6660131.html 1.Scala2.12.1环境搭建 1).下载scal ...
- 贴一段demo代码,演示channel之间的同步
package main import ( "fmt" "time" ) func deskGoRoutine(index int, userChannel c ...
- golang的slice作为函数参数传值的坑
直接贴代码 func sliceModify(slice []int) { // slice[0] = 88 slice = append(slice, ) } func main() { slice ...
- 算法训练 安慰奶牛(节点有权值的MST)
问题描述 Farmer John变得非常懒,他不想再继续维护供奶牛之间供通行的道路.道路被用来连接N个牧场,牧场被连续地编号为1到N.每一个牧场都是一个奶牛的家.FJ计划除去P条道路中尽可能多的道路, ...