0、前言

  • 本文中的IDEA版本是2020.3,使用的插件版本是MyBatisCodeHelper-Pro 2.8.9,3.0+版本目前没找到激活的方式
  • 和本文插件类似的还有mybatisX,但我不喜欢,所以用的是本文说的插件

1、下载地址

注:激活之后别去更新了

2、激活方式

  • IDEA顶部菜单:Tools -> MybatisCodeHelper -> Activation -> OfflineActivation / 离线激活,在offline key / 离线激活码 框输入任意字符串

3、配置

  • 数据库用的tinyInt 或者 smallInt生成java类型是 byte 和 short 两种类型。在java代码里面操作 byte 和 short 类型比较麻烦,经常需要强制转换,下面是设置使用Integer 来替代byte和short还有使用Java8的日期时间类型
  • 不设置也行

4、使用MyBatisCodeHelper-Pro

4.1、依赖


<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.4</version>
</dependency> <dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.11</version>
</dependency> <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.1.RELEASE</version>
</dependency>

4.2、根据Java实体类生成建表sql语句

  • 在Java实体类中选择alt+insert

  • 按需要进行配置,之后选择OK即可

4.3、MyBatis逆向工程:根据表生成Bean、Dao+mapper和Service

  • IDEA链接数据库
  • 选择要逆向生成的表右键
  • 选择mybatis generator

  • 按需要进行配置,然后选择OK即可

  • 注:

    • xxxExample别选:会生成一大堆的example文件,xml中的example代码看起来也很乱、建议使用方法名生成sql来替代
    • 不推荐mapper接口做继承,所以父类配置那里别弄:代码都是自动生成的,mapper做继承仅能减少一些代码量,效率提升不明显。搞了继承后,看mapper接口对应的xml也变得比较麻烦,哪些方法要放到继承里面也比较难定义,有可能某些接口继承的方法根本用不到。建议是每个接口只生成自己需要的xml方法
    • 生成注释最好选上:不然可能会出现以后数据库新增字段了,那生成的xml无法和以前生成的进行合并
  • 生成结果如下

4.4、根据接口中的方法名生成对应的mapper

  • 只需要一个方法名,不需要参数和返回值,在mapper接口中输入方法名后,按alt+enter –> Generate mybatis sql

  • 方法名生成sql时支持if test,要用这个的话,选择下面的方式,之后选择相应的if选项内容即可

  • 生成find、update、delete、count等方法的使用方式和上述的方法一样的:单表操作的代码只要写个方法名就好了[方法名第一个单词直接敲对应的find、update.....即可],根据方法名 直接生成sql代码 方法名有自动提示

4.5、一键添加@param注解

  • 把光标放在参数位置,然后按alt+ente即可

4.6、生成mapper映射文件中resultMap未使用的字段

  • 光标放到resultmap标签type属性值上 -> alt + enter -> generate unUsed properties

4.7、根据mapper接口生成mapper映射文件

  • 创建一个接口 -> 光标放到接口名上 -> alt + enter -> generate mybatis mapper for current class -> 选择mapper映射文件位置

4.8、生成测试用例

  • 光标放在方法名处,直接按alt+enter,选择如下选项,然后配置数据库信息即可[此测试用例是不基于spring的单元测试的]

4.9、生成分页查询(依赖于 pageHelper)

  • 光标放在方法名处,按alt+enter,选择如下对应选项

  • 最后在impl的相应类中就有对应的分页功能的代码

4.10、从表数据导出java insert语句

  • 可用于快速构造测试数据

操作方式:

  • 在IDEA中打开表
  • 选择要测试的数据
  • 右键选择generate java class setter for row
  • 选择表对应的实体类
  • copy测试数据,之后就可以放到需要的地方了

4.11、补充:Dao / mapper中方法名的规则

对于find方法:可以使用 selectqueryget 替代find开头,支持orderBy,distinct, findFirst

对于update方法:可以使用modify替代update开头

对于delete方法:可以使用remove替代delete开头

对于count方法:支持distinct

IDEA插件MyBatisCodeHelper-Pro的破解与使用的更多相关文章

  1. 《IDA Pro 代码破解解密》笔记一

    博客地址:http://blog.csdn.net/qq1084283172/article/details/53158970 return 0;  C语言返回0语句的汇编形式 Intel-32汇编: ...

  2. Adobe Acrobat XI Pro安装破解

    注册机使用说明: Install Instructions: (Read carefully!) 安装说明(仔细阅读!) 1. Disable your Network card or pull th ...

  3. 180714、JRebel插件安装配置与破解激活(多方案)详细教程

    JRebel 介绍 IDEA上原生是不支持热部署的,一般更新了 Java 文件后要手动重启 Tomcat 服务器,才能生效,浪费不少生命啊.目前对于idea热部署最好的解决方案就是安装JRebel插件 ...

  4. unity缓动插件DOTween Pro v0.9.680

    DoTween Pro是一款unity插件,是unity中最好用的tween插件,比起Dotween的免费版要多很多功能,实现脚本和视觉脚本的新功能,支持包括移动,淡出,颜色,旋转,缩放,打孔,摇动, ...

  5. Xmind 8 pro 软件破解版

    转载地址:https://blog.csdn.net/qq_16093323/article/details/80967867 Xmind是一款非常专业的思维导图软件,收费好几百元,不过还是很多用户, ...

  6. JRebel插件安装配置与破解激活(多方案)详细教程

    JRebel 介绍 IDEA上原生是不支持热部署的,一般更新了 Java 文件后要手动重启 Tomcat 服务器,才能生效,浪费不少生命啊.目前对于idea热部署最好的解决方案就是安装JRebel插件 ...

  7. 2017.6.30 安装IDEA的插件mybatis plugin(破解版)

    参考来自:http://blog.csdn.net/u011410529/article/details/54098067 正常情况下的安装: 但是我的界面中找不到这个插件,而且这个插件是收费的. 1 ...

  8. Adobe Acrobat Pro DC破解

    下载amtemu 点击 在AMT Emulator界面,下拉选择Adobe Acrobat DC; 然后点击右下角Install安装破解补丁. 点击Install后在弹出窗口中手动找到并选择软件安装目 ...

  9. [Windows] 系统清理与优化神器Advanced SystemCare 13 PRO非破解附正版激活码

    Advanced SystemCare是一款功能强大的系统清理优化软件,该软件提供的主要功能有:启动项优化.注册表整理和清理.隐私清扫.垃圾文件清理.快捷方式修复.恶意软件清除.网络加速.系统优化.安 ...

  10. Adobe Premiere Pro 2020破解教程

    首先官网下载Adobe Creative Cloud,安装完之后使用它继续安装Pr.注意在安装之前,点击文件→首选项,先设置一下你的安装路径,没有设置则默认安装在C盘. 接着下载网上良心博主推荐的破解 ...

随机推荐

  1. 基于LadybugFlow的微服务编排(1.SpringBoot集成)

    前言 前面的系列文章里,介绍了ladybugflow的业务可视化的设计以及常见场景的使用方法. 感谢大家对项目的关注. 本篇文章介绍一下基于ladybugflow的微服务编排场景及使用方法. 1. 业 ...

  2. servlet映射路径匹配解析

    开头 servlet是javaweb用来处理请求和响应的重要对象,本文将从源码的角度分析tomcat内部是如何根据请求路径匹配得到处理请求的servlet的 假设有一个request请求路径为/tex ...

  3. LuoguP4219 [BJOI2014]大融合(LCT)

    早上考试想用\(LCT\)维护联通块\(size\),现在才发现\(LCT\)的\(size\)有虚实之分 \(Link\)与\(Acess\)中虚实变,干他丫的 \(Splay\)中只是相对关系,没 ...

  4. ABC206 F - Interval Game 2 (区间DP,博弈论,SG函数)

    题面 题意很简单 A l i c e \tt Alice Alice 和 B o b \tt Bob Bob 在博弈.摆在他们面前有 N \rm N N 个区间 [ l i , r i ) \rm[l ...

  5. 学习ASP.NET Core Blazor编程系列二——第一个Blazor应用程序(上)

    学习ASP.NET Core Blazor编程系列一--综述 一.概述 Blazor 是一个生成交互式客户端 Web UI 的框架: 使用 C# 代替 JavaScript 来创建信息丰富的交互式 U ...

  6. 【python】一些python用法规律笔记

    作为本科用了多年MATLAB的工科生,学起来python有些似曾相识但也有些不习惯的地方. 在这里总结一下,慢慢整理,希望能巩固python语法 一.前闭后开 这个是和MATLAB很大不同.不论是ra ...

  7. 第七十篇:Vue组件的使用

    好家伙, 1.vue的组件化开发 1.1.什么是组件? 组件是对UI结构的复用, vue是一个支持组件化开发的前端框架, vue中规定:组件的后缀名是.vue 例如:App.vue文件本质上就是一个v ...

  8. BNC Part-of-speech codes

    Extracted from the BNC Manual AJ0 adjective (general or positive) e.g. good, old AJC comparative adj ...

  9. Zookeeper 分布式事务锁的使用

    使用Netflix的包 curator-recipes pom文件引入相关依赖 <dependency> <groupId>org.apache.zookeeper</g ...

  10. 【读书笔记】C#高级编程 第十二章 动态语言扩展

    (一)DLR C#4的动态功能是Dynamic Language Runtime(动态语言运行时,DLR)的一部分.DLR是添加到CLR的一系列服务. (二)dynamic类型 dynamic类型允许 ...