一键生成mapper、mapperxml等文件——MybatisX插件的使用
本文首发于西二blogs:一键生成mapper、mapperxml等文件——MybatisX插件的使用
搬运请务必转载出处。
MybatisX插件使用——为快速开发而生
前言:其实很久以前我就非常厌恶写一堆mapper、service、impl之类的重复性工作,一直希望有那么一个工具帮我干这些重复性工作。后面终于发现了这么一个宝藏插件。
以下为官方介绍:
MybatisX 是一款基于 IDEA 的快速开发插件,为效率而生。
虽然这款插件功能比较好用,但是其却是全英文的插件,并且有些选项难以从字面意义上理解,而官方的文档说明不够完善,因此特撰写本文帮助后来者排坑。
需要搭配以下一起食用
SpringBoot
MybatisPlus(也可以不搭配,但是效果就没那么好了)
快速上手
首先在idea中的插件搜索MybatisX下载。
1.生成代码功能
在idea中配置好数据源,右键需要生成代码的表名,点击MybatisX-Generator选项,弹出如下界面。
部分参数说明:
module path:模块路径,此处填写项目所在路径,生成的代码会在相应位置。
basepackage:填写项目的包
encoding:编码,使用UTF-8即可
base path:代码所在路径
relative package:决定实体类会被生成在哪里,默认生成在domain包中,可以修改为其他包但不要为空。
extra class suffix:生成的实体类后面会加上里面的内容。举例:图中如果这里写入Test,最后生成实体类会叫FilesTest
ignore xxx:生成实体类相应字段中忽略指定的前缀/后缀,以下为举例:
- 数据库中有字段名称为type,若ignore field prefix参数设置为ty,则生成实体类中相应的属性名为pe,忽略了ty;
- 数据库名为files,若ignore table prefix设置为为fi,则生成的实体类的名字变为Les,忽略了fi
superClass:生成实体类继承的父类
点击next后,下一步为生成mapper、service等
参数说明:
annotation:生成的代码中是否加上注解(例如,@TableName等注解)。None为没有注解,其他为字面意思。
options各选项经过尝试后,作用大致如下
- comment:可能和生成java doc comments有关,但试了下,好像没有效果。
- toString/hashCode/equals:是否生成相应的方法;建议勾选。
- Lombok:勾选后实体类自动添加Lombok的@Data注解;建议勾选(建议安装Lombok)
- Actual Column:勾选后,生成的实体类属性名和表中字段名大小写会保持一致。例如,表中有字段classID,勾选该选项后生成的属性名也为classID,未勾选则为classid。建议根据实际需要勾选。
- Actual Column Annotation:是否对所有属性名都加上注解标明对应字段,例如@TableName。建议勾选。
- JSR310:Data API:是否使用新标准的时间日期API,包括 Instant、Clock、LocalDateTime、DateTimeFormatter、ZonedDateTime 以及替换 Calendar 的 Chronology 等类。建议勾选(新标准的时间日期API比老版本友好多了,强烈建议使用新版时间日期API)。
template:生成mapper、service等相关代码所使用的模板。template可以修改,默认位于 草稿和控制台——扩展——MybatisX 。对应文件夹内即为相关模板的具体配置文件。如果需要重置,右键template文件夹点击重置默认扩展即可。
如果没有使用MybatisPlus,可以选择default-empty模板。或自定义其他模板。
最底下的表:显示所要生成文件的类型、模块路径、基本路径、生成后位于哪个包。后面三个列都可以修改值以符合项目需要。这些也可以在对应的template的文件夹内的.meta.xml中进行修改。
点击Finish即完成对应代码的生成。
2.xml跳转功能
安装该插件后,对应的mapper和mapperxml图标变成蓝鸟和红鸟。在代码行号的右侧点击相应的蓝鸟和红鸟图标即可快速跳转到对应部分,方便修改。(如果代码使用@Insert等注解而不是在xml中实现SQL代码,则左侧不会显示相应图标)
3.JPA提示(代码自动补全,同时在xml中生成对应的SQL语句)
这点官方文档中的动图演示的非常清晰了,这里就不再赘述。
MybatisX 快速开发插件 | MyBatis-Plus (baomidou.com)
结语
以上就是MybatisX插件的食用方法,希望大家能通过这个插件来有效的提升自己的效率,把时间花在刀刃上,减少一些重复性的工作。
一键生成mapper、mapperxml等文件——MybatisX插件的使用的更多相关文章
- mybatis自动生成mapper,dao映射文件
利用Mybatis-Generator来帮我们自动生成mapper.xml文件,dao文件,model文件. 1.所需文件 关于Mybatis-Generator的下载可以到这个地址:https:// ...
- mybatis自己主动生成mapper,dao,映射文件
一.先创建数据脚本,这里用的mysql数据脚本 drop table VOTE_ITEM; drop table VOTE_OPTION; drop table VOTE_SUBJECT; drop ...
- IDEA 一键生成所有setter方法(GenerateAllSetter插件)
GenerateAllSetter插件使用效果如下: alt+enter快捷键选择Generate all setter 之后就会自动生成其中的所有setter方法 下面介绍idea安装步骤: alt ...
- SSM 生成mapper中xml文件:未能解析映射资源:“文件嵌套异常
错误日记我就网上随便找个贴着: 错误一: org.springframework.beans.factory.BeanCreationException: Error creating bean wi ...
- 命令+mybatis-generator插件自己主动生成Mapper映射文件
学mybatis的时候,自己写各种 *Mapper.xml和 *Mapper.java,注意各种sql语句中的 id 是否匹配.xml中的namespace是否正确,非常麻烦有木有?今天博客内容就是高 ...
- Mybatis逆向生成Mapper文件
本文参考博客 http://blog.csdn.net/for_my_life/article/details/51228098 1. 在resources根目录下添加generator.proper ...
- Mybatis-generator插件,用于自动生成Mapper和POJO
后台环境为springboot+mybatis. 步骤一:添加mybatis环境 <dependency> <groupId>mysql</groupId> < ...
- 使用mybatis-generator插件结合tk.mybatis自动生成mapper二三事
本篇文章将介绍使用spring boot框架,引入mybatis-generator插件,结合tk.mybatis自动生成Mapper和Entity的一整套流程,其中包括最重要的踩坑与填坑. ...
- 002 spring boot框架,引入mybatis-generator插件,自动生成Mapper和Entity
1.创建一个springboot项目 2.创建项目的文件结构以及jdk的版本 3.选择项目所需要的依赖 点击next,直到项目构建完成. 4.项目初步结构 5.POM文件 <?xml versi ...
随机推荐
- 安卓手机超频CPU(无修饰CPU控制)
手机软件内存越占越大,手机硬件配置太低运行太卡.其实可以通过超频cpu提升性能,安卓智能手机cpu怎么超频下面我来演示手机如何超频cpu. 方法/步骤 打开无修饰CPU控制. 设置CP ...
- MySQL里的那些日志们
该系列博文会告诉你如何从入门到进阶,从sql基本的使用方法,从MySQL执行引擎再到索引.事务等知识,一步步地学习MySQL相关技术的实现原理,更好地了解如何基于这些知识来优化sql,减少SQL执行时 ...
- netty系列之:channel和channelGroup
目录 简介 神龙见首不见尾的channel channel和channelGroup channelGroup的基本使用 将关闭的channel自动移出 同时关闭serverChannel和accep ...
- Solution -「CF 510E」Fox And Dinner
\(\mathcal{Description}\) Link. 给定正整数集合 \(\{a_n\}\),求一种把这些数放置在任意多个圆环上的方案,使得每个环的大小大于 \(2\) 且环上相邻两 ...
- Spring Data JPA应用 之查询分析
在Spring Data JPA应用之常规CRUD操作初体验 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)尾附上了JpaRepository接口继承关系及方法,可以知道JpaRepos ...
- MCU与MPU的基本区别
MCU与MPU的基本区别 题记:一般来说,mpu的价格是mcu的数倍. 参考资料: http://www.elecfans.com/d/1564656.html https://zhuanlan.zh ...
- kubernetes集群之Pod说能不能让我体面的消亡呀?
kubernetes集群之Pod说能不能让我体面的消亡呀? 由于 Pod 所代表的是在集群中节点上运行的进程,当不再需要这些进程时允许其体面地终止. 1.如果 preStop 回调所需要的时间长于默认 ...
- 实践GoF的23种设计模式:SOLID原则(上)
摘要:本文以我们日常开发中经常碰到的一些技术/问题/场景作为切入点,示范如何运用设计模式来完成相关的实现. 本文分享自华为云社区<实践GoF的23种设计模式:SOLID原则(上)>,作者: ...
- 使用ensp模拟器中的防火墙(USG6000V)配置NAT(网页版)
使用ensp模拟器中的防火墙(USG6000V)配置NAT(网页版)一.NAT介绍NAT(Network Address Translation,网络地址转换):简单来说就是将内部私有地址转换成公网地 ...
- 思迈特软件Smartbi:传统BI被“革命”,AI是BI技术未来的发展趋势
根据IDC报告,2020年中国BI软件存量市场规模为38.2亿元,到2024年,市场规模将达到78.5亿元,未来4年整体市场年复合增长率(CAGR)为19.2%.此外,还有规模达到100亿元的增量市场 ...