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

本文是作者辛苦整理的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. MLlib特征变换方法

    Spark1.6.2.2.3 PCA 算法介绍: 主成分分析是一种统计学方法,它使用正交转换从一系列可能相关的变量中提取线性无关变量集,提取出的变量集中的元素称为主成分.使用PCA方法可以对变量集合进 ...

  2. 【HDU - 1560】DNA sequence (dfs+回溯)

    DNA sequence 直接中文了 题目描述 21世纪是生物科技飞速发展的时代.我们都知道基因是由DNA组成的,而DNA的基本组成单位是A,C,G,T.在现代生物分子计算中,如何找到DNA之间的最长 ...

  3. C#3.0新增功能09 LINQ 基础04 基本 LINQ 查询操作

    连载目录    [已更新最新开发文章,点击查看详细] 本篇介绍 LINQ 查询表达式和一些在查询中执行的典型操作. 获取数据源 在 LINQ 查询中,第一步是指定数据源. 和大多数编程语言相同,在使用 ...

  4. UTF-16 -- 顶级程序员也会忽略的系统编码问题,JDK 错了十年!

    Unicode(统一码.万国码.单一码)是计算机科学领域里的一项业界标准,包括字符集.编码方案等.Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一 ...

  5. 安装解压版MySQL5.76及以上版本 出现服务正在启动-服务无法启动的问题

     最近重装了系统,去MySQL官网下载了最新的MySQL5.7.9,我选择的是解压版,安装之后启动服务的时候,提示服务无法启动,在网上找了很多教程,弄了很久都没有弄好,后来还是决定去英文官网找找答案, ...

  6. JAVA项目从运维部署到项目开发(六. Jenkins之静态页面)

    用Git托管静态页面代码,通过Jenkins部署静态页面,是再方便不过的了.本文将介绍如何通过Jenkins部署最新的静态页面代码. 一.Jenkins的配置 1.设置项目名称.参数(环境.分支)等 ...

  7. Redis(五)--- Redis的持久化RDB与AOF

    一.Redis数据库 我们都知道Redis是基于内存的数据库,数据是以key-value键值对的方式存储的,那么key-value键值对是随意放在内存中的么,其实Redis的服务会创建很多的数据库空间 ...

  8. F#周报2019年第30期

    新闻 Fantomas 3.0 宣告.NET Core 3.0预览版7 .NET Core 3.0预览版7中ASP.NET Core与Blazor的升级 Visual Studio 2019版本16. ...

  9. C#航空查询及预订

    关于航空查询及预订项目中出现的问题 namespace Flight{ public partial class Flight : Form { public Flight() { Initializ ...

  10. springBoot的过滤器,监听器,拦截器

    概述 在开发中,我们经常要考虑一些问题,对敏感词进行过滤,用户是否已经登录,是否需要对他的请求进行拦截,或者领导问现在在线人数有多少人?我们如何实现这些功能哪 @WebFilter package c ...