效率提升
Jrebel
热部署插件,修改代码编译就生效,节省大量重启服务时间。热部署支持修改方法代码,方法定义,类定义,接口定义(包括swagger文档),修改资源文件,修改mapper.xml(需配合JRebel MybatisPlus插件一起使用),注意Jrebel不支持spring配置文件热加载(今后可配合Nacos实现)。
Jrebel使用说明
Jrebel 是一款提高开发效率的利器,能够实时加载变更的代码,避免频繁重启项目,它和自带热更新功能的区别:
- 自带的热更新仅支持方法内容修改,不支持新增类、新增方法、修改方法签名、新增类成员变量、修改类成员变量签名,功能非常局限
- Jrebel 除了支持以上功能,还支持自动将修改后的类注入spring 容器、修改Mapper.xml后自动刷新mybatis、监听Jar包的变化等非常强大的功能
安装激活
1、先准备一个 UUID,激活时需要,使用idea自带的 Groovy 控制台快速生成一个 UUID
2、插件市场里查找JRebel and XRebel和JRebel MybatisPlus两个插件,安装完成后,重启idea
3、重启后JRebel会自动弹出激活窗口要求激活,点击"Active"按钮激活,弹出激活面板(如果未自动弹出窗口,也可以在 idea 菜单中点击Help-JRebel-Activation手动打开)
4、选择第一种激活方式“Team URL”,URL填入https://jrebel.qekang.com/ +开始准备好的GUID(UUID),邮箱地址任意填,然后勾选最下方的“I agree with....”,点击确认注册,提示激活成功。
使用
在左下角的窗口边栏中找到JRebel,点击进入Jrebel设置面板,将每个有启动类的模块开启 Jrebel。只有开启了开关的模块才能激活热部署。
启动项目时不再用原来的Run和Debug,改用JRebel的按钮启动,在原来的启动图标旁边,火箭带三角形的代表热部署的运行,火箭带虫子的代表热部署的debug
修改代码后,任何编译(编译项目、编译模块、重编译当前类)都会自动刷新class,无需重启项目
上图三种编译的区别:
- Build Project - 编译整个工程,增量编译,如果想强制重新编译选择最下方的 Rebuild Project
- Build Module - 编译模块,编译模块时只会编译本模块以及模块依赖的其他模块,增量编译
- Recompile ‘xx.java’ - 重编译当前类文件,只对当前窗口所在类进行重新编译
开发过程中最常用的应该是Build Module编译当前模块,建议改快捷键为 ctrl+s
(原来的保存快捷键并没有什么用,idea 是自动保存的),这样改完代码后 ctrl+s
一下就能触发编译,同时 jrebel 会自动热更新变动的代码(就像曾经的 Eclipse 自动编译的体验)
MybatisX ⭐⭐⭐⭐⭐
mybatis开发插件,支持自动生成xml文件,自动生成sql标签;支持xml和接口方法互相跳转,重构;xml语法提示;
Batslog
mybatis sql日志格式化插件,提供一个面板,左上角点击启动后,开始搜集控制台的mybatis日志,并格式化成可执行的sql,方便直接复制到db工具中执行。
GenerateAllSetter
可以一键生成对象的所有set方法,还可以在方法中一键生成两个bean的转换逻辑(自动根据相同字段名进行赋值,不同类型也可以智能转换,编译报错的代码代表无法识别,再手动解决一下即可),适合bean拷贝的场景
Swagger Tools
一键生成Swagger,自动判断Controller或者Bean生成注解,并将注释填入注解中。
使用alt+insert
点击SwaggerAnnotation生成。默认生成类中所有方法的swagger,也可以通过选中字段名、方法名生成指定swagger注解。
该插件有点瑕疵,生成类中所有方法swagger时,类中非接口方法也会生成,需要注意一下
RestfulTool
服务开发工具,ctrl+alt+/
根据api路径寻找接口方法;
提供了一个工具面板,可以浏览所有模块的接口并提供简单的接口测试工具,可以用来测试
减少Bug
Alibaba java coding guide⭐⭐⭐⭐⭐
阿里编码规约插件,帮助养成良好的编码习惯,减少bug。
通过Tools->阿里编码规约->编码规约扫描,进行代码扫描,执行完成后,会按照Blocker、Critical、Major(极严重、严重、警告)三个等级来显示不规范的地方,遇到黄色的警告记得去修改。
SonarLint⭐⭐⭐⭐
SonarQube是管理代码质量一个开源平台,可以快速的定位代码中潜在的或者明显的错误
️实用工具
Translation
翻译插件,可以方便的翻译源码注释,翻译代码,以及提供一个翻译面板进行自由翻译,可以告别网页的百度翻译了
String manipulation⭐⭐⭐⭐
字符串转换工具,idea自带的快捷键Ctrl+Shift+U
只能转换大小写,这款插件可以转换 驼峰-下划线-全小写-全大写等等n多种格式,可以根据需求配置转换规则。
GsonFormatPlus⭐⭐⭐⭐
json工具,可以通过json生成javaBean,在和前端定下接口之后,可以很方便的生成bean文件。简单使用直接复制json后在bean中按alt+回车
选择生成代码。如果json中含有注释,可使用alt+s
解析带注释的json文本,生成带java注释的属性
maven helper ⭐⭐⭐⭐
maven工具,依赖冲突检查,依赖关系查看
打开pom文件点击左下角的Dependency Analyzer即可展示
key promoter x⭐⭐⭐⭐
当你在IDEA里面使用鼠标的时候,如果这个鼠标操作是能够用快捷键替代的,那么它会弹出一个提示框,告知你这个鼠标操作可以用什么快捷键替代,还会统计点击鼠标频次最高的操作,idea新手非常适合
代码阅读
Rainbow brackets ⭐⭐⭐⭐
彩虹括号,用不同的颜色显示成对的括号,方便阅读代码
同类型插件还有HighlightBracketPair,比彩虹括号更低调一些,只会在鼠标光标最近的一对括号加色块重点显示,可根据喜好选择
grep console⭐⭐⭐⭐
日志增强工具,支持美化高亮,日志过滤,异常信息一目了然
code glance⭐⭐⭐⭐
将滚动栏显示成代码缩略图,在阅读内容很长的类时方便快速定位