46

IntelliJ IDEA 18个常用插件,动图演示,让效率成为习惯

 4 years ago
source link: https://www.tuicool.com/articles/QJVNBjv
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
jaEFfq3.png!web

点击上面  蓝色字体 关注我们

技术  /  架构  /  职场  /  面试   /  内推

文章转自微信公号:服务端思维

梁桂钊、陈同学、张帆、刁政欣(研习小组)| 作者

一、官方工具

IntelliJ IDEA 默认安装并提供了非常多的工具,比如 Git Integration、Maven Integration、Markdown support、SSH Remote Run 等。其中有很多好用,但是不为人知的工具。

1. REST client

在日常开发过程中,我们或多或少都涉及到 API 接口的测试。例如,有的小伙伴使用 Chrome 的 Postman 插件,或者使用火狐的 restclient 等工具。事实上,这些工具是测试 API 接口非常有效的方式之一,笔者之前也一直使用 Postman 完成 API 接口的测试工作。今天,笔者推荐另外一个非常好用的小工具,能够帮助读者快速测试 API 接口。这个工具就是 IDEA 的 Editor REST Client。IDEA 的 Editor REST Client 在 IntelliJ IDEA 2017.3 版本就开始支持,在 2018.1 版本添加了很多的特性。事实上,它是 IntelliJ IDEA 的 HTTP Client 插件。 详细使用文档,参考:

http://blog.720ui.com/2018/restclient_use/

m2EvMrq.jpg!web

2. UML Support

如果需要研究源码,内置 UML Support 插件可以很好地查看类继承关系。 详细使用文档,参考:

https://www.jetbrains.com/help/idea/class-diagram.html

veyuyia.png!web

未完待续。。。

二、市场插件

  • 阿里代码规约检测

  • 快捷键提示工具:Key promoter X

  • 代码注解插件: Lombok

  • 代码生成工具:CodeMaker

  • 单元测试测试生成工具:JUnitGenerator

  • Mybatis 工具:Free Mybatis plugin

  • Maven辅助神器:Maven Helper

  • JSON转领域对象工具:GsonFormat

  • 领域对象转JSON工具:POJO to JSON

  • 时序图生成工具:SequenceDiagram

  • 字符串工具:String Manipulation

  • 代码作色工具:Rainbow Brackets

  • RESTful 服务开发辅助工具集: RestfulToolkit

  • 日志工具:Grep Console

  • 生成对象set方法:GenerateAllSetter

  • Redis可视化:Iedis

  • K8s工具:Kubernetes

  • 中英文翻译工具:Translation

1. 阿里代码规约检测

《阿里巴巴 Java 开发手册》是阿里巴巴集团技术团队的集体智慧结晶和经验总结, 经历了多次大规模一线实战的检验及不断完善, 系统化地整理成册。当然,规范只能提供参考,我们还需要工具来帮忙我们实现了实时检测。目前,Alibaba Java Code Guidelines 插件实现了开发手册中的的 53 条规则,大部分基于 PMD 实现,其中有 4 条规则基于 IDEA 实现,并且基于 IDEA Inspection 实现了实时检测功能。部分规则实现了 Quick Fix 功能。目前,插件检测有两种模式:实时检测、手动触发。详细使用文档,参考:

https://github.com/alibaba/p3c/blob/master/idea-plugin/README_cn.md

阿里巴巴 Java 开发手册(详尽版):

https://github.com/alibaba/p3c/blob/master/阿里巴巴Java开发手册(详尽版).pdf

GitHub : https://github.com/alibaba/p3c

IDEA 插件地址:

https://plugins.jetbrains.com/plugin/10046-alibaba-java-coding-guidelines

vyAjAbF.jpg!webjYNVR32.jpg!web

此外,类似的插件还有 FindBugs 和 CheckStyle。

2. 快捷键提示工具:Key promoter X

Key Promoter X 是一个快捷键提示插件,如果鼠标操作是能够用快捷键替代,Key Promoter X 会提示可以用什么快捷键替代。 详细使用文档,参考:

https://plugins.jetbrains.com/plugin/9792-key-promoter-x

bAriUfv.gif

3. 代码注解插件: Lombok

lombok 的使用,参考 :https://projectlombok.org/。我们需要在代码中引入二方库,然后安装 lombok 插件即可。

4. 代码生成工具:CodeMaker

开发过程中,经常手工编写重复代码。现在,可以通过 CodeMaker 来定义 Velocity 模版来支持自定义代码模板来生成代码。目前,CodeMaker 自带两个模板。Model:根据当前类生成一个与其拥有类似属性的类,用于自动生成持久类对应的领域类。Converter:该模板需要两个类作为输入的上下文,用于自动生成领域类与持久类的转化类。 详细使用文档,参考:

https://github.com/x-hansong/CodeMaker

5. 单元测试测试生成工具:JUnitGenerator

单元测试是必不可少的!我们可以使用 JUnitGenerator 插件来自动创建了单元测试。我们可以使用提供的 velocity 模板定制单元测试输出代码。如果在已经存在单元测试的地方创建了单元测试,则会提示用户进行覆盖或合并操作。合并操作允许用户有选择地创建目标文件内容。 详细使用文档,参考:

https://plugins.jetbrains.com/plugin/3064-junitgenerator-v2-0

6. Mybatis 工具:Free Mybatis plugin

现在,MyBatis 框架已占领半壁江山。因此,围绕着 MyBatis 的插件和工具越来越多。Free Mybatis plugin 非常方便进行 Mapper 接口和 XML 文件之间跳转。 详细使用文档,参考:

https://plugins.jetbrains.com/plugin/8321-free-mybatis-plugin。

此外,收费版的还有 Mybatis plugin。

AVJBj2U.gif

对于 Mybatis 的工具还有很多,比如 mybatis-log-plugin、codehelper.generator。此外,非 IDEA的工具有: Mybatis 分页插件 Mybatis-PageHelper、Mybatis 代码生成工具 mybatis-generator 等。 地址:

http://www.mybatis.org/generator/

7. Maven辅助神器:Maven Helper

如果 Maven 引入的 jar 包有冲突,可以使用 Maven Helper 插件来帮助分析。 详细使用文档,参考:

https://plugins.jetbrains.com/plugin/7179-maven-helper

eU7Rz22.gif

8. JSON转领域对象工具:GsonFormat

在开发过程中,我们可能会遇到 json 格式的字符串转换成实体类参数的场景,这个插件可以根据 JSONObject 格式的字符串,自动生成实体类参数。 详细使用文档,参考:

https://github.com/zzz40500/GsonFormat
那么,如何使用呢?我们可以使用 GsonFommat 的快捷键,默认 option + s (mac), alt + s (win) 通过以下方式修改快捷键。或者点击工具栏的 Generate 来唤起生成工具。

zMZZBrQ.gif

9. 领域对象转JSON工具:POJO to JSON

为了测试需要,我们需要将简单 Java 领域对象转成 JSON 字符串方便用 postman 或者 curl 模拟数据。 详细使用文档,参考:

https://plugins.jetbrains.com/plugin/9686-pojo-to-json

ERjiI3e.gif

10. 时序图生成工具:SequenceDiagram

有的时候,我们需要梳理业务逻辑或者阅读源码。从中,我们需要了解整个调用链路,反向生成 UML 的时序图是强需求。其中,SequenceDiagram 插件是一个非常棒的插件。 详细使用文档,参考:

https://plugins.jetbrains.com/plugin/8286-sequencediagram

YzmQzua.gif

11. 字符串工具:String Manipulation

String Manipulation 插件提供了非常丰富字符串工具,例如命名替换( (camelCase, kebab-lowercase, KEBAB-UPPERCASE, snake case, SCREAMING SNAKE_CASE, dot.case, words lowercase, Words Capitalized, PascalCase)等。 详细使用文档参考:

https://plugins.jetbrains.com/plugin/2162-string-manipulation

12. 代码作色工具:Rainbow Brackets

Rainbow Brackets 插件可以实现配对括号相同颜色,并且实现选中区域代码高亮的功能。详细使用文档,参考:

https://plugins.jetbrains.com/plugin/10080-rainbow-brackets

EbEzmab.jpg!web

eeMVzqe.gif

事实上,代码作色之后,可以非常方便我们阅读。类似的工具还有:Grep Console 来自定义设置控制台输出颜色等。

13. RESTful 服务开发辅助工具集: RestfulToolkit

开发中,经过会根据 URI 的部分信息来查找对应的 Controller 中方法,RestfulToolkit 提供了一套 RESTful 服务开发辅助工具集,提供了如下功能:

根据 URL 直接跳转到对应的方法定义 ( Ctrl \ or Ctrl Alt N ); 提供了一个 Services tree 的显示窗口; 一个简单的 http 请求工具; 在请求方法上添加了有用功能: 复制生成 URL;,复制方法参数... 其他功能: java 类上添加 Convert to JSON 功能,格式化 json 数据 ( Windows: Ctrl + Enter; Mac: Command + Enter )。 详细使用文档,参考:

https://plugins.jetbrains.com/plugin/10292-restfultoolkit

iuYryuy.jpg!web

14. 日志工具:Grep Console

参考:

https://plugins.jetbrains.com/plugin/7125-grep-console

不同级别日志通过颜色区分,一路了然

vIBNNzR.jpg!web

高亮日志

nM7B3i2.jpg!web

便捷检索日志

jmU3ArE.png!web

15. 生成对象set方法:GenerateAllSetter

开发中,有时可以通过BeanUtil等工具类进行对象之间的属性拷贝,但有时候也需要手工进行赋值。通过GenerateAllSetter,可以一键生成对象的所有set语句。

eiU7Zni.jpg!web

16. Redis可视化:Iedis

参考:

https://plugins.jetbrains.com/plugin/9228-iedis 

使用参考:

https://codesmagic.com/iedis/userguide/getting-started 

可方便的执行增删查改及使用命令行进行操作。

Z7Ffqay.jpg!web

17. K8s工具:Kubernetes

参考 

https://plugins.jetbrains.com/plugin/10485-kubernetes 

支持编辑 Kubernetes 资源文件,如下: 

可以比较方便的查看yaml中的各项 placeholder 的默认值,且可以方便的链接到value位置。

Yz2EFvM.jpg!web

18. 中英文翻译工具:Translation

最骚的操作是什么?帆哥在群里分享了一套「半中文编程」:说到了变量命名,先用中文写好,然后用 Translation 插件的 translate and replace 一键替换为英文,这样效率高而且准确。 详细使用文档,参考:

https://plugins.jetbrains.com/plugin/8579-translation

搜云库技术团队,欢迎广大技术人员投稿

投稿邮箱: [email protected]

如果对本文的内容有疑问,请在文章留言区留言,谢谢。

版权申明:内容来源网络,版权归原创者所有。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知我们,我们会立即删除并表示歉意。谢谢!

限时:免费进星球

我建了知识星球, 限时免费加入 ,已经有 1300 + 人了

星球介绍: 技术,资讯,资源,分享,职场,面试,答疑

星球是为了帮助公众号和博客粉丝更好更近的沟通,这里会有最新的技术文章分享,技术答疑,职场面试等相关问题交流沟通。

Ff2IBrA.jpg!web

微信识别二维码, 限时免费加入

公号回复关键字

回复: 【进群】

「技术架构分享群」 

回复:

【内推】 十大热门城市,程序员 作内推群   回复: 【1024】 送2019最新  4000G  

架构师视频 

新资料、面试题、等其他资料,进群找群主

更多技术干货


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK