工欲善其事,必先利其器,好的工具可以提升我们的开发效率,下面介绍几款个人觉得比较好的编辑器插件,不仅炫酷更重要可以提高你的工作效率。

本文是作者辛苦整理的16款插件,每个都是超级实用的,不好不介绍,相信体验过后才知道它的好。

  1. Activate-power-mode
  2. pojo-to-json
  3. SequenceDiagram
  4. Free Mybatis plugin
  5. Key promoter X
  6. CodeGlance
  7. JUnitGenerator V2.0
  8. GenerateAllSetter
  9. ideavim
  10. sonarlint
  11. restfultoolkit
  12. Translation
  13. GenerateSerialVersionUID
  14. Maven Helper
  15. Lombok Plugin
  16. JRebel for IntelliJ

Activate-power-mode 插件

我喜欢称这个插件叫,“会跳舞的神器”,先看下效果

 你的代码在跳舞,跟随我的脚步,免费蹦迪,此插件有玩耍娱乐之嫌,实用性不高,耍酷还可以。下面介绍要说的重点插件,保证让你满意而归。

pojo-to-json idea 插件

工作中,为了测试需要,我们需要将简单 Java 领域对象转成 JSON 字符串方便用 postman 或者 curl 模拟数据

官方详细介绍地址 https://plugins.jetbrains.com/plugin/9686-pojo-to-json

安装插件后重启Idea,选择一个类,右键:

会复制生成的JSON到粘贴板中:ctr+V 就可以粘贴出来。

时序图生成工具:SequenceDiagram 插件

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

官方详细介绍地址 https://plugins.jetbrains.com/plugin/8286-sequencediagram

比如:你想看某个方法的执行流程,可以选择右键这个方法接口或者方法实现

立即生成时序图

Free Mybatis plugin 插件

MyBatis 框架已经应用于各个地方。因此,围绕着 MyBatis 的插件和工具越来越多。Free Mybatis plugin 非常方便进行 Mapper 接口和 XML 文件之间跳转。

官方详细介绍地址 https://plugins.jetbrains.com/plugin/8321-free-mybatis-plugin

安装之后在Java dao层会生成一个标记,点击标记立即跳转到xml文件指定位置,非常方便:

并且xml里面还可以跳转会java dao 层指定的方法:

快捷键提示工具:Key promoter X

官方详细介绍地址 https://plugins.jetbrains.com/plugin/9792-key-promoter-x

这个插件什么用呢?举个例子,你想看某个方法内部实现的时候,如果你不用快捷键,你会这样鼠标点:

如果你安装了这个插件,你每次这样鼠标点击后,开发工具右下角会提示你,使用快捷键:

安装这个插件后,快捷键用的飞起来。

CodeGlance 插件

当你的类上千行的时候,在你往下拖拽找对象的时候,是不是感觉挺累的,有个这个插件,可以查看缩略图一样,快速切换到自己需要去的地方,飞翔的感觉。

官方详细介绍地址 https://github.com/Vektah/CodeGlance

安装后显示效果图如下:

JUnitGenerator V2.0 自动生成单元测试代码

编写单元测试是好的开发者的习惯,但是怎么提高你代码的效率,单元测试代码可否自动生成,这个插件就是帮我们做这事情。

修改JUnitGenerator V2.0 的配置,Settings下的 Other Settings 修改下模版和更新配置

设置成功后,就可以根据方法或者类生成单元测试模版了:

GenerateAllSetter 插件

当你进行对象之间赋值的时候,有没有觉得好麻烦,能不能有一个更好的办法呢~ 有,只要你选中需要生成set方法的对象,按下快捷键 alt+enter 界面如下:

有没有感觉很厉害, 官方详细介绍地址 https://plugins.jetbrains.com/plugin/9360-generateallsetter

ideavim 插件

让你的代码如飞:可以让你在编辑器中使用vim的命令操作,来回切换,尽量脱离鼠标的限制,提高你的开发效率,这个插件mac上面使用效果更好。 详细地址:http://plugins.jetbrains.com/plugin/164-ideavim

sonarlint 代码质量管理

找出你的代码隐藏bug或者坏味道

官方详细介绍地址 http://intellij.sonarlint.org

可以选择你要执行的代码类或者项目执行就可以类,下面会列出结果和意见

restfultoolkit 插件

Java WEB开发必备,再也不用全局搜索RequestMapping了

安装操作:

安装完毕之后使用,根据 URL 直接跳转到对应的方法定义windows ( Ctrl + \ or Ctrl +Alt + N ) 而 mac 机器快捷键:(Command +Option + N or Command+\)

还可以查看Services中所有的接口url list,并且模拟请求,非常方便,简化操作 

中英文翻译工具:Translation

这个最长用就是阅读源码的时候,看别人的注释,英文不好的,可以安装一个。 

官方详细介绍地址 https://plugins.jetbrains.com/plugin/8579-translation

选择要翻译的单词或者句子,右键或者快捷键,可以翻译操作:

GenerateSerialVersionUID 插件

Java 的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。在反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,否则就会出现序列化版本不一致的异常。所以生成serialVersionUID 会很频繁,这个插件一个快捷键帮你搞定 Alt + Insert

步骤1:先安装插件,根据上面的名字搜索安装

步骤2: 设置Inspections功能

这时候,在javabean里面,就可以看到编辑器右边有黄色的提示了,可以点开看看 将光标放到类名上,按atl+enter键,就会提示生成serialVersionUID了

(此图片来源于网络)

Maven Helper 插件

Maven的依赖机制会导致Jar包的冲突。举个例子,现在你的项目中,使用了两个Jar包,分别是A和B。现在A需要依赖另一个Jar包C,B也需要依赖C。但是A依赖的C的版本是1.0,B依赖的C的版本是2.0。这时候,Maven会将这1.0的C和2.0的C都下载到你的项目中,这样你的项目中就存在了不同版本的C,这时Maven会依据依赖路径最短优先原则,来决定使用哪个版本的Jar包,而另一个无用的Jar包则未被使用,这就是所谓的依赖冲突。

幸运的是什么呢?

在大多数时候,依赖冲突可能并不会对系统造成什么异常,因为Maven始终选择了一个Jar包来使用。

但是不幸的却是,不排除在某些特定条件下,会出现类似找不到类的异常,所以,只要存在依赖冲突,在我看来,最好还是解决掉,不要给系统留下隐患。

而要介绍的这个Maven Helper 插件就可以解决这个问题。

怎么用呢?

安装之后打开pom.xml文件,底部有个Dependency Analyzer选项,点击

下面如何解决冲突(此图片来源网络,这哥们标记的非常好,我就不重造轮子了)

还有一个小技巧可看整体项目Maven依赖结构图:

记住:图中看到有一些红色的实线,代表依赖冲突,蓝色实线代表正常的依赖

Lombok Plugin 插件

使用注解自动生成代码,码奴解放者,省去实体类的set get 注意还要在Maven项目的pom.xml中添加配置

  1. <dependency>
  2. <groupId>org.projectlombok</groupId>
  3. <artifactId>lombok</artifactId>
  4. <version>1.16.6</version>
  5. </dependency>

具体的类上面打上@Data 即可

JRebel for IntelliJ 热部署插件

JRebel是一个提升生产力的工具,相信不少程序员改完代码后,最头疼的是不能直接看到效果,每次构建,重启以及重新部署的循环操作,时间无形中浪费掉了,有个这个插件,所改即所见,让你编码过程更加流畅。

END

推荐阅读

解决RabbitMQ消息丢失问题和保证消息可靠性(一)

如何做程序员喜欢的测试妹子?

如有收获,请帮忙转发,您的鼓励是作者最大的动力!

长按下图关注公众号 架构师的修炼

IntelliJ IDEA提升效率开发插件必备的更多相关文章

  1. idea提升效率的插件

    这篇文章用于记录idea插件.多分类记录确实可以提升效率. 1. FindBugs 虽说Idea本身提供的代码检查工具已经很强大了,但Idea提供的更多是规范性的检查,如果需要深入地检查异常,可以使用 ...

  2. fir.im Weekly - 17 个提升 iOS 开发效率的必备工具

    本期 fir.im Weekly 精选了一些iOS 开发工具和动画源码分享,希望每个开发者能专注效率.实用.灵感.  iOS开发工具--如何优化ipa包大小 @iOS程序犭袁 推荐了关于"如 ...

  3. 【老孟Flutter】6种极大提升Flutter开发效率的工具包

    老孟导读:本文介绍6种极大提升Flutter开发效率的工具包. [1] 强大的日志软件包 在开发 Flutter 的过程中打印日志是常用的调试方式之一,但 Flutter 内置的日志打印非常简单,下面 ...

  4. Atitit.研发管理--提升效率--软件开发方法DSM总结o99

    Atitit.研发管理--提升效率--软件开发方法DSM总结o99 1. 什么是DSM? 1 2. DSM使用的语言DSL 2 3. 模型的优点 2 4. DSM 跟与MDA区别 2 5. MDA的实 ...

  5. Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725

    Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓  O725 1. DSL主要分为三类:外部DSL.内部DSL,以及语言工作台. 1 2. DSL ...

  6. atitit.提升软件开发的效率and 质量的那些强大概念and方法总结

    atitit.提升软件开发的效率and 质量的那些强大概念and方法总结 1. 主流编程中三个最糟糕的问题 1 1.1. 从理解问题后到实现的时间很长 1 1.2. 理解和维护代码  2 1.3. 学 ...

  7. atitit.提升软件开发效率大的总结O5

    atitit.提升软件开发效率大的总结O5 #---平台化.组件化 1 #--cbb公用模块的建设 1 #---内部最佳流程方法跟实践的总结 2 #---内部知识体系的建设 2 #---问题Qa库的建 ...

  8. 使用Charles Proxy提升iOS开发效率

    以前做前端开发的时候,使用最多的工具就是 Fiddler ,用来定位问题.模拟特定场景非常方便,极大提升了开发效率.而转做 iOS 开发以后,一大头疼的问题是 Fiddler 没有 Mac 版,幸亏找 ...

  9. IntelliJ IDEA,酷炫插件系列,提高你的工作效率

    今天介绍一下IDEA的一些炫酷的插件,IDEA强大的插件库,不仅能给我们带来一些开发的便捷,还能体现我们的与众不同. 1.插件的安装 打开setting文件选择Plugins选项 Ctrl + Alt ...

随机推荐

  1. 几款常用的在线API管理工具(是时候抛弃office编写接口文档了)

    在项目开发过程中,总会涉及到接口文档的设计编写,之前使用的都是ms office工具,不够漂亮也不直观,变更频繁的话维护成本也更高,及时性也是大问题.基于这个背景,下面介绍几个常用的API管理工具,方 ...

  2. Java监控任务的生命周期

    Observable: public interface Observable { enum Cycle{ STARTED, RUNNING, DONE, ERROR } Cycle getCycle ...

  3. spring mvc 拦截器的使用

    Spring MVC 拦截器的使用 拦截器简介 Spring MVC 中的拦截器(Interceptor)类似于 Servler 中的过滤器(Filter).用于对处理器进行预处理和后处理.常用于日志 ...

  4. Linux运维跳槽必备

    Linux运维跳槽必备的40道面试精华题 1.什么是运维?什么是游戏运维?1)运维是指大型组织已经建立好的网络软硬件的维护,就是要保证业务的上线与运作的正常, 在他运转的过程中,对他进行维护,他集合了 ...

  5. CentOS 7.3 安装python3

    1.排查 CentOS 7.3 默认安装的是python2,使用命令 python -V 可以看到 python 的版本 Python 2.7.5 然后使用命令 which python 查看一下Py ...

  6. 使用jqueryUI实现自由调整表格列宽

    今天项目中需要插入表格,用Excel表格调整列宽时,想怎么拖就怎么拖,于是乎就让插入的表格也这么让人舒服.网上查找许久,没找到好用的方案.最后发现jQuery UI中的resizable()方法可以实 ...

  7. 个人永久性免费-Excel催化剂功能第105波-批量调整不规范的图形对象到单一单元格内存储

    在日常制表过程中,一个不得不面对的问题,许多的工作起点是基于其他人加工过的表格,无论自己多大的本领,面对不规范的其他人的制作的表格,经过自己的手,该擦的屁股还是要自己去亲手去擦,而带出来的也只会是一堆 ...

  8. C#2.0新增功能01 分布类与分部方法

    连载目录    [已更新最新开发文章,点击查看详细] 分部类型 拆分一个类.一个结构.一个接口或一个方法的定义到两个或更多的文件中, 每个源文件包含类型或方法定义的一部分,编译应用程序时将把所有部分组 ...

  9. 校园表白墙、微信表白墙、校园墙 微信小程序 JAVA 开发记录与分享

    目录 最新版表白墙博客地址 1.微信小程序前台展示 2.功能介绍 3.后台管理 4.后端语言采用 JAVA 开发 5.体验此微信小程序 扫描下方二维码 6.如何联系我或需要源码进行联系 最新版表白墙博 ...

  10. C#编程.面向对象编程.可删除对象(Using{})

    Using关键字可以在代码块中初始化使用重要资源的对象,Dispose()方法会在这个代码块的末尾自动调用,用法如下: <ClassName> <VariableName> = ...