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的插件机制使用动态代理实现,不了解的朋友请先了解代理模式和动态代理:插件本质是 ...
随机推荐
- 使用dnSpy对目标程序(EXE或DLL)进行反编译修改并编译运行
本文为原创文章.源代码为原创代码,如转载/复制,请在网页/代码处明显位置标明原文名称.作者及网址,谢谢! 本文使用的工具下载地址为: https://github.com/cnxy/dnSpy/arc ...
- win10安装.net3.5 报错解决
在win10光盘里提取“microsoft-windows-netfx3-ondemand-package.cab”安装包 然后放在sxs目录 新建批处理...??Cls@ECHO OFFTITLE ...
- Mybatis新增返回主键的两种方法 (mysql)
1.自增:LAST_INSERT_ID (自动返回最后一个INSERT或 UPDATE 问询为 AUTO_INCREMENT列设置的第一个 发生的值.) <!-- mysql的自增ID :LAS ...
- RK3288 查看时钟树
主控端可以通过指令查看时钟树,enable_cnt为1,表示时钟已使能. # cat d/clk/clk_summary cat d/clk/clk_summary clock enable_cnt ...
- GOF23设计模式之组合模式(composite)
一.组合模式概述 将对象组合成树状结构以表示“部分和整体”层次结构,使得客户可以统一的调用叶子对象和容器对象. (1)组合模式的使用场景 把部分和整体的关系用树形结构来表示,从而使客户端可以使用统 ...
- Java-Runoob-高级教程:Java 序列化
ylbtech-Java-Runoob-高级教程:Java 序列化 1.返回顶部 1. Java 序列化 Java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包 ...
- php网站环境无法上传的解决办法?
一. 检查网站目录的权限.二. php.ini配置文件php.ini中影响上传的有以下几处:file_uploads 是否开启 on 必须开启是否允许HTTP文件上传post_max_size = 8 ...
- 什么是java序列化,如何实现java序列化?
http://veryti.com/question/539 序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化.可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间 ...
- Nginx压力测试工具之WebBench
Nginx压力测试工具之WebBench 在Apache中有自带的ab命令可以测试服务的压力,而nginx没有自带的命令,必须要采用第三方软件来测试,今天就简单介绍一下webbench对nginx ...
- 转:Ubuntu下用Sublime输入中文
最近用上ubuntu跑theano,碰到的一个问题就是用sublime编辑代码的时候无法输入中文. 读代码经常要写注释不能用中文是在是麻烦. 曾经考虑过使用别的文本编辑器,但是sublime的用户界面 ...