关于IDEA MybatisX插件的使用小技巧

 更新时间:2023年03月29日 15:51:21   作者:贝贝才不是小淘气  
这篇文章主要介绍了关于MybatisX插件的使用小技巧,MybatisX是IDEA的一款第三方插件,可以极大地提升我们的开发效率,一起来看看吧

前言

一开始本来我是想用Free Mybatis plugin的,结果搜不到,然后就发现了这货,一番体验之后是真的舒爽啊!!!

1.安装MybatisX

在这里插入图片描述

2.功能

2.1.文件跳转

这个功能我是在太爱了,在使用mybatis框架的时候,你还在繁琐的找和接口对应的mapper.xml、SQL语句吗?还在繁琐的找和mapper.xml对应的接口、方法吗?还在繁琐的找注入给serviceImpl的接口吗?
这也太麻烦还巨浪费时间了!!!,而MybatisX插件提供了跳转的功能,通过点击“愤怒的小鸟”就可以跳转到对应的地方。

我敲了个简单项目来演示:

在这里插入图片描述

跳到了mapper.xml(点第二只小鸟会跳到id为findAll所对应的方法)

在这里插入图片描述

2.2.代码自动生成

其实很久以前我就非常头疼写一堆dao、service、serviceImpl、mapper.xml、pojo的重复性工作,一直希望有那么一个工具帮我干这些重复性工作,而MybatisX可以根据表自动生成且模板可自定义。

最好搭配以下一起食用:

SpringBootMybatisPlus(可选,但是不选,效果就没有那么好了)。

第一步: 连接数据源。

在这里插入图片描述

在这里插入图片描述

注意:时区要写对,不然会犯病(时区在哪配置?上面"测试连接"要是测出了时区问题,你可以按照指引去做配置,改成Asia/Shanghai即可)。

第二步: 点batisx-generator,配置自动生成代码。

在这里插入图片描述

在这里插入图片描述

  • module path:模块路径,此处填写项目所在路径。
  • base package:填写项目的包(你需要把dao、service、serviceImpl、mapper.xml、pojo这些生成在哪个包下)
  • encoding:编码,使用UTF-8即可。
  • base path:就是base package的前段(比如,base path+base package=src/main/java/com/sangeng)
  • relative package:实体类所在的包名,默认是domain。
  • extra class suffix:生成的实体类后面会加上此内容。例如,上图中本来要生成的实体类为User的,然后我们在extra class suffix框里敲上Test,最后生成的实体类为UserTest。
  • ignore field prefix(前缀):数据库中有字段名为name的,若ignore field prefix框里敲上na,则生成的实体类中对应的属性名为me,省略了na。
  • ignore table prefix:数据库表名为mybatis_db,若ignore tableprefix框里敲上my,则生成的实体类的名字变为batis_db(当然,要是你设置了extra class suffix,那么生成的实体类后面会加上指定内容)。
  • superClass:生成实体类继承的父类。

在这里插入图片描述

  •  annotation选项:生成的代码中是否加上注解(例如,@TableName等注解)。None为没有注解,其它为字面意思。
    • 因为我只是做个演示,没有使用MybatisPlus框架,也没有service、serviceImpl,所以是这样配置的,要是想要有service和serviceImpl,annotation可以勾选Mybatis-Plus3。
  • options选项:经过尝试后,作用大致如下:
    • comment:可能和生成java doc comments有关,但试了下,好像没有效果。
    • toString/hashCode/equals:是否生成相应的方法,建议勾选。
    • Lombok:勾选后实体类自动添加Lombok的@Data注解,建议勾选(要先安装Lombok插件哦)
    • Actual Column:勾选后,生成的实体类属性名和表中字段名大小写会保持一致。例如,表中有字段Name,勾选该选项后生成的属性名也为Name,未勾选则为name,建议根据实际需要勾选。
    • Actual Column Annotation:是否对所有属性名都加上注解标明对应字段,例如@TableName,建议勾选。
    • JSR310:Data API:是否使用新标准的时间日期API,包括 Instant、Clock、LocalDateTime、DateTimeFormatter、ZonedDateTime 以及替换 Calendar 的 Chronology 等类。建议勾选(新标准的时间日期API比老版本友好多了,强烈建议使用新版时间日期API)
  • template选项:生成mapper、service等相关代码所使用的模板。
    • 如果没有使用MybatisPlus,可以选择default-empty模板或自定义其它模板—默认位于:临时文件和控制台–>Extensions–>MybatisX(就在idea左下边)
    • 对应文件夹内即为相关模板的具体配置文件。如果需要重置,右键template文件夹点击重置默认扩展即可。

在这里插入图片描述

  •  最底下的表:显示所要生成文件的类型、模块路径、基本路径、生成后位于哪个包(默认为mapper)。后面3个列都可以修改值(以符合项目需求)。这些也可以在对应的template的文件夹内的.meta.xml中进行修改。
补充:

要是使用了Mybatis-Plus框架这样配置即可:

在这里插入图片描述

第三步: 点Finish,完事儿!!!

注意:以上操作是敲定了user表,生成的是user表的,要是还要生成其它表的,一样的套路即可。

查看自动生成的代码:

在这里插入图片描述

2.3.代码自动补全

第一步: 要有对应接口的mapper.xml—可以把光标放在接口名上右键生成:

在这里插入图片描述

第二步:

根据提示敲好方法名(或者自定义,但是就只会生成声明,不会生成sql语句)–>右击–>show context actions(显示上下文操作)–>generate mybatis sql。

快捷:光标放在方法名上–>Ctrl+Enter–>generate mybatis sql。

在这里插入图片描述

到此这篇关于关于MybatisX插件的使用小技巧的文章就介绍到这了,更多相关MybatisX使用小技巧内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • javaFX实现五子棋小游戏

    javaFX实现五子棋小游戏

    这篇文章主要为大家详细介绍了javaFX实现五子棋小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-07-07
  • springboot 使用websocket技术主动给前端发送消息的实现

    springboot 使用websocket技术主动给前端发送消息的实现

    这篇文章主要介绍了springboot 使用websocket技术主动给前端发送消息的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 解决springcloud-eureka注册时的ip问题

    解决springcloud-eureka注册时的ip问题

    这篇文章主要介绍了解决springcloud-eureka注册时的ip问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Maven打包SpringBoot工程的实现示例

    Maven打包SpringBoot工程的实现示例

    在使用Spring Boot和Maven的项目中,你可以使用Maven来打包你的项目,本文主要介绍了Maven打包SpringBoot工程的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2024-05-05
  • 使用Spring自定义实现IOC和依赖注入(注解方式)

    使用Spring自定义实现IOC和依赖注入(注解方式)

    这篇文章主要介绍了使用Spring自定义实现IOC和依赖注入(注解方式),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Java FTP上传下载删除功能实例代码

    Java FTP上传下载删除功能实例代码

    这篇文章主要介绍了Java FTP上传下载删除功能实例代码,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-03-03
  • java中pdf转图片的实现方法

    java中pdf转图片的实现方法

    下面小编就为大家带来一篇java中pdf转图片的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Spring Boot 实现字段唯一校验功能(实例代码)

    Spring Boot 实现字段唯一校验功能(实例代码)

    这篇文章主要介绍了Spring Boot 实现字段唯一校验,实现代码很简单,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • java接口防重提交的处理方法

    java接口防重提交的处理方法

    本文主要介绍了java接口防重提交的处理方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • 在SpringBoot中使用lombok的注意事项

    在SpringBoot中使用lombok的注意事项

    这篇文章主要介绍了在SpringBoot中使用lombok的注意事项,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12

最新评论