IDEA 必备插件!

在 IDEA 插件市场 plugins.jetbrains.com 里,可以自己搂点喜欢的有用的插件。

以下是日常开发中使用的高频插件

1 Key Promoter X

Key Promoter X插件,IDEA 快捷键提示工具。

在每次我们使用鼠标进行 IDEA 的某个操作,Key Promoter X 会在 ↘️右下角自动弹框提示对应的键盘快捷键。效果如下图所示:

鼠标点击运行程序,被提示可以使用control+shift+F10快捷键

鼠标点击停止程序,被提示可以使用command+F10快捷键

 操作系统 Windows 和 MacOS 的键盘不太一样,Key Promoter X 会自动识别提示。

通过使用 Key Promoter X 插件,胖友不再需要主动记忆 IDEA 快捷键,而是在提示中,不断使用形成肌肉记忆。甚至,Key Promoter X 还给整理了未使用快捷键的清单列表,如下图所示:

有趣的是,Key Promoter X 在提示快捷键的同时,会告诉我们“错过”了使用快捷键的次数。效果如下图:

对于正在使用 Eclipse 的胖友,如果担心快捷键切换的成本,可以考虑基于 Key Promoter X 插件的提示,逐步进行转换。

2 MyBatisX

强烈推荐

MyBatisX插件,对 MyBatis 框架的增强插件,提升使用 MyBatis 的效率和体验。

效果如下图所示:

友情提示:如下图片,来自baomidou.com/guide/mybat…文档。

功能效果

XML 跳转

生成代码

生成insert操作

生成update操作

生成delete操作

生成select操作

友情提示:MyBatisCodeHelperPro插件,最好的 MyBatis 代码提示,完整支持 MyBatis 动态 SQL 代码提示,代码检测,写 SQL 几乎所有地方都有代码提示。

付费之后会更加好用,胖友也可以尝试下。

2.3 MybatisLogFormat

强烈推荐

MybatisLogFormat插件,格式化 MyBatis 输出的 SQL 日志。

操作步骤为,选中控制台输出的 MyBatis SQL 日志,右键选中「MybatisLogFormat」选项,之后选择「copy」即可。过程如下图所示:

2.4 SequenceDiagram

强烈推荐

SequenceDiagram插件,生成 UML时序图

操作步骤为,选中某个方法,右键点击「SequenceDiagram」选项,即可生成时序图。过程如下图所示:

无论是阅读框架的源码,还是业务的代码,时序图都能帮助我们快速建立整体的认知。

2.5 Codota

强烈推荐

Codota插件,智能的代码提示工具,相比 IDEA 自带的提示会更加全面精准

原因是,Codota 先从数百万个 Java开源项目中学习代码,后扫描学习我们的本地项目的代码。这样,在我们疯狂撸码时,Codota 可以根据代码的上下文,给出更合适的补全提示,更少的失误,更快的工作效率。

可能会有胖友跟艿艿担心安全性的问题,😼 我的代码可是价值一个亿啊!和 IDEA 一样,Codota 是本地化的,所以不用担心“”代码的问题。如下图所示:

① 来看一个创建 Java List 时,Codota 给出的代码提示,直接会让我们选择具体对应的 ArrayList 还是 LinkedList。效果如下图所示:

② 如果想找一些开源库时,碰到不知道如何使用,除了使用谷歌百度搜索之外,还可以使用 Codota 进行检索示例。以 Guava 的Lists工具类来举例子,我们来看看 Codota 的检索结果,效果如下图所示:

所以,我们可以把 Codota 作为一个垂直于代码的搜索引擎。如果不想使用 Codota 插件的胖友,但是又想使用 Codota 搜索代码,可以直接访问它对应的www.codota.com/code在线网站。

③ Codota 通过 Java 开源项目积累了很多代码的实践,所以能够提供经过实践代码模板。以使用 HttpClient 发起一次 GET 请求来举例子,效果如下图所示:

良心艿:更多 Codota 的骚操作,胖友可以去看看《CODOTA 官网用户手册(中文版)》文档。

2.6 JRebel

强烈推荐

JRebel插件,热部署工具。在我们每次修改代码后,不用重启程序,JRebel 会自动将所有的代码变更生效。这样,相当于“跳过”频繁的 Java 代码的编译、启动的过程,大大的提升了我们的开发效率。

老五跟艿艿说,自从他使用了 JRebel 插件,一天只启动一次项目,后面都靠 JRbel 热加载。牛逼!!!

效果如下图所示:

JRebel 的使用步骤,推荐胖友后续看看《IDEA JRebel 插件热部署(史上最全)》文章。

良心艿:IDEA自带热部署的功能,相比 JRebel 会弱一些,胜在不用给 JRebel 二次付费,并且能够满足大多数我们热部署需要的场景。具体的使用教程,可以看看艿艿写的《芋道 Spring Boot 热部署入门》文章。

2.7 Database Tools and SQL

强烈推荐

Database Tools and SQL插件,IDEA 内置的数据库工具,基本支持所有的主流数据库。

Database Tools and SQL 插件,后面演化成单独的DataGrip产品。相比大家常用的 Navicat 来说,它能更好的跟 IDEA 联动起来。那么怎么做选择呢?“年轻人才做选择,艿艿两个都用”

下面,我们来简单使用下 Database Tools and SQL 插件,效果如下图所示:

更多关于该插件的内容,可以后面阅读如下的文章:

《说实话,DataGrip 真得牛逼,只是你不会用而已~》

《DataGrip 使用入门》

2.8 Maven Helper

强烈推荐

Maven Helper插件,对 Maven 工具的增强插件。

可以查看 Maven 的依赖列表。效果如下图所示:

也可以查看 Maven 的依赖冲突,这个是一个非常有用且好用的功能。一旦发现冲突,可以使用 Maven Helper 进行去除。效果如下图所示:

2.9 Alibaba Java Coding Guidelines

![Alibaba Java Coding Guidelines](www.iocoder.cn/images/IDEA…Coding-Guidelines-01.png)

强烈推荐

Alibaba Java Coding Guidelines插件,基于《阿里巴巴 Java 开发手册》代码规范的检测工具。

选中项目,点击「编码规约扫描」按钮,可以给整个项目来个大保健。符合规范的代码,会分成 Blocker / Critical / Major 三类进行展示。效果如下图所示:

![Alibaba Java Coding Guidelines 检测](www.iocoder.cn/images/IDEA…Coding-Guidelines-02.png)

良好的编码习惯,从让每一行代码做起。

“积小步,成大器”

“代码不规范,对象找不到”

2.10 Translation

Translation插件,翻译神器,支持有道、百度、谷歌三种翻译引擎。

我们来看两个常用场景的使用示例:

选中一个单词,进行翻译。效果如下图所示:

输入一个单词,进行翻译。效果如下图所示:

良心艿:翻译框的呼出,Windows 使用ctrl+shift+o快捷键,MacOS 使用control+command+i快捷键。

有一点要注意,使用有道或者百度翻译引擎时,需要配置下应用编号和秘钥。如下图所示:

2.11 Lombok

强烈推荐

Lombok插件,对 Lombok 工具的集成支持,减少冗余代码,提升开发效率。

良心艿:对 Lombok 不了解的胖友,可以阅读下艿艿写的《芋道 Spring Boot 消除冗余代码 Lombok 入门》文章。

之前有胖友反馈,由于使用 Lombok 工具时,需要整个团队安装 IDEA Lombok 插件,碰到不愿意安装的成员,导致非常闹心!相信这个问题会逐步“自动”解决,因为自 IDEA2020.3版本开始,默认内置开启Lombok 插件。

2.12 GenerateAllSetter

强烈推荐

GenerateAllSetter插件,一键调用一个对象的所有的 setter 方法。

效果如下图所示:

友情提示:如下图片,来自github.com/gejun123456…文档。

功能效果

生成对象,并设置默认值

生成对象,并设置传入参数作为值

生成 List / Set / Map 返回结果

2.13 MapStruct Support

强烈推荐

MapStruct Support插件,对 MapStruct 的集成支持。

良心艿:MapStruct 是一款 POJO 转换的工具库,对标胖友常用的是 BeeaUtils,可以提供更好的性能。

想要了解的胖友,可以阅读《芋道 Spring Boot 对象转换 MapStruct 入门》文章。

效果如下图所示:

友情提示:如下图片,来自mapstruct.org/news/2017-0…文档。

功能效果

属性的补全提示

属性的跳转

查找使用

2.14 HTTP Client

强烈推荐

HTTP Client插件,是 IDEA 提供的 HTTP API测试插件,默认内置,直接开启即可使用。

一个简单的使用示例,如下图所示:

考虑到 HTTP Client 使用.http文件配置接口请求,可以方便的与 Git 进行集成,实现团队协作的共享。因此,越来越多的团队使用它,逐步取代 Postman 工具。

良心艿:关于 HTTP Client 插件的详细使用,可以看看艿艿写的《芋道 Spring Boot API 接口调试 IDEA HTTP Client》文章。

2.15 JUnitGenerator

JUnitGenerator插件,用于快速生成单元测试类。

使用步骤为,选中类名,使用快捷键command+enter呼出菜单,点击「Create Test」选项,进行选择确认后,即可创建出对应的单元测试类。效果如下图所示:

友情提示:Windows 对应的快捷键为ctrl+enter。

可能很多胖友没有写单元测试的习惯,可以考虑尝试下。通过单元测试构建我们编写的代码的防护网,能够极大的提升交付质量和代码质量。

良心艿:对单元测试感兴趣的胖友,可以看看《芋道 Spring Boot 单元测试 Test 入门》文章。

2.16 MOMO Code Sec Inspector

强烈推荐

MOMO Code Sec Inspector插件,Java 静态代码安全审计插件。

重于在编码过程中发现项目潜在的安全风险,并提供一键修复能力。

用 IDEA 原生 Inspection 机制检查活跃文件,检查速度快,占用资源少。

效果如下图所示:

友情提示:如下图片,来自gitee.com/mirrors/mom…文档。

功能效果

Mybatis XML Mapper SQL 注入漏洞发现与一键修复

XXE 漏洞发现与一键修复

“代码千万行,安全第一条”

3. 低频插件

低频不是不用,而是满足胖友某些场景的“特殊”需求。

3.1 Statistic

Statistic插件,统计项目的代码行数。

效果如下图所示:

一个项目的纯代码行数,往往和项目的复杂程度成正比。而越多的注释占比,大概率是一个良心工程师写的代码。

每次在艿艿clone一个新项目后,习惯性会看看代码的行数,可以对项目的复杂度有个快速的判断。然后,在将 Java 类按照倒序排序,了解哪些类和模块是相对复杂的。

3.2 RestfulToolkit

RestfulToolkit插件,一套 RESTful 服务开发辅助工具集。

例如说,双击shift后输入 URL 地址,可以搜索到对应 Controller 的方法。效果如下图:

3.3 LeetCode Editor

LeetCode Editor插件,可以在 IDEA 上,直接刷 LeetCode 的算法题。

效果如下图所示:

具体的使用教程,胖友可以后续看看 LeetCode Editor 插件的作者写的git.io/JLMce指南。

3.4 GsonFormatPlus

GsonFormatPlus插件,JSON 格式化。同时,可以基于 JSON 字符串,直接生成 POJO 类。

效果如下图所示:

友情提示:GsonFormatPlus 框的呼出,Windows 使用alt+s快捷键,MacOS 使用option+s快捷键。

3.5 VisualVM Launcher

VisualVM Launcher插件,对 VisualVM 工具的集成支持,可以对启动的 Java 服务进行性能分析

良心艿:对 VisualVM 不了解的胖友,可以看看《Java 性能调优:利用 VisualVM 进行性能分析》文章。

不过悲伤的是,VisualVM Launcher 插件貌似暂时不支持 IDEA2020.3版本。

3.6 activate-power-mode-x

activate-power-mode-x插件,打字特效

写代码的时候,可以感受到整个屏幕在颤抖,简直起飞哈。效果如下图:

不过有一点要注意,每次切换一个文件时,会有几秒的延迟,才会有打字特效。略微有点小坑,艿艿一开始还以为自己插件没安装上。

良心艿:同类的打字特性插件,还有Power mode II,色彩会更加酷炫一点。

3.7 UML

UML 插件,IDEA自带插件,可以生成类图,源码阅读神器!

效果如下图所示:

友情提示:在类图中,选中父类后,可以通过快捷键获取到所有子类。

Windows 使用ctrl+alt+b快捷键,MacOS 使用option+command+b快捷键。

3.8 Jclasslib Bytecode Viewer

Jclasslib Bytecode Viewer插件,查看已编译类的字节码。相比直接使用javap命令工具来说,可视化的 Jclasslib Bytecode Viewer 会更加方便,毕竟接大多数胖友对 javap 的使用不是很娴熟。

操作步骤为,打开要查看字节码的,选择「Show Bytecode With Jclasslib」菜单,即可查看该类相关的字节码信息。过程如下图所示:

3.9 any-rule

any-rule插件,常用正则表达式大全,基本艿艿能想到的场景都覆盖到了。

效果如下图所示:

友情提示:any-rule 框的呼出,Windows 使用alt+a快捷键,MacOS 使用option+a快捷键。

4. 其它插件

还有一些其它插件,可能胖友会感兴趣,但是艿艿没有去使用,也可以花点时间去瞅瞅~毕竟嘛,萝莉御姐,各有所爱。

插件用途

IdeaVimIDEA Vim 模式的集成支持传送门 => 教程

idea-yapi将 RESTful API 和 Dubbo API 推送到YApi接口平台

ElasticsearchElasticsearch 的集成支持

DockerDocker 的集成支持传送门 => 教程

String Manipulation字符串驼峰、下划线等等转换

Background Image Plus背景图片增强,支持随机、透明等

CodeGlance代码地图,缩略在代码编辑区的右侧

Rainbow Brackets彩色括号

Indent Rainbow彩色缩进

Grep Console控制台输出彩色日志

google-java-format谷歌 Java 代码格式化

QAPlug管理代码质量,集成了PMD、Checkstyle、Findbugs等工具

Alibaba Cloud Toolkit阿里云的工具套件传送门 => 教程

MarkdownMarkdown 的集成支持,使用体验一般

Request mapper搜索 URL 对应的 Controller 方法,是 RestfulToolkit 的子集

Request mapper搜索 URL 对应的 Controller 方法,是 RestfulToolkit 的子集

chchar中文字符替换插件


如果胖友热爱阅读源码,或者有这个打算,可以考虑使用 Statistic + UML + SequenceDiagram 三件套,一直使用一直爽。


链接:https://juejin.cn/post/6945249164276006943

来源:掘金

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容