IntelliJ IDEA提升效率开发插件必备
工欲善其事,必先利其器,好的工具可以提升我们的开发效率,下面介绍几款个人觉得比较好的编辑器插件,不仅炫酷更重要可以提高你的工作效率。
本文是作者辛苦整理的16款插件,每个都是超级实用的,不好不介绍,相信体验过后才知道它的好。
- Activate-power-mode
- pojo-to-json
- SequenceDiagram
- Free Mybatis plugin
- Key promoter X
- CodeGlance
- JUnitGenerator V2.0
- GenerateAllSetter
- ideavim
- sonarlint
- restfultoolkit
- Translation
- GenerateSerialVersionUID
- Maven Helper
- Lombok Plugin
- 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中添加配置
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.16.6</version></dependency>
具体的类上面打上@Data 即可
JRebel for IntelliJ 热部署插件
JRebel是一个提升生产力的工具,相信不少程序员改完代码后,最头疼的是不能直接看到效果,每次构建,重启以及重新部署的循环操作,时间无形中浪费掉了,有个这个插件,所改即所见,让你编码过程更加流畅。
END
推荐阅读
如有收获,请帮忙转发,您的鼓励是作者最大的动力!
长按下图关注公众号 架构师的修炼
IntelliJ IDEA提升效率开发插件必备的更多相关文章
- idea提升效率的插件
这篇文章用于记录idea插件.多分类记录确实可以提升效率. 1. FindBugs 虽说Idea本身提供的代码检查工具已经很强大了,但Idea提供的更多是规范性的检查,如果需要深入地检查异常,可以使用 ...
- fir.im Weekly - 17 个提升 iOS 开发效率的必备工具
本期 fir.im Weekly 精选了一些iOS 开发工具和动画源码分享,希望每个开发者能专注效率.实用.灵感. iOS开发工具--如何优化ipa包大小 @iOS程序犭袁 推荐了关于"如 ...
- 【老孟Flutter】6种极大提升Flutter开发效率的工具包
老孟导读:本文介绍6种极大提升Flutter开发效率的工具包. [1] 强大的日志软件包 在开发 Flutter 的过程中打印日志是常用的调试方式之一,但 Flutter 内置的日志打印非常简单,下面 ...
- Atitit.研发管理--提升效率--软件开发方法DSM总结o99
Atitit.研发管理--提升效率--软件开发方法DSM总结o99 1. 什么是DSM? 1 2. DSM使用的语言DSL 2 3. 模型的优点 2 4. DSM 跟与MDA区别 2 5. MDA的实 ...
- Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725
Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725 1. DSL主要分为三类:外部DSL.内部DSL,以及语言工作台. 1 2. DSL ...
- atitit.提升软件开发的效率and 质量的那些强大概念and方法总结
atitit.提升软件开发的效率and 质量的那些强大概念and方法总结 1. 主流编程中三个最糟糕的问题 1 1.1. 从理解问题后到实现的时间很长 1 1.2. 理解和维护代码 2 1.3. 学 ...
- atitit.提升软件开发效率大的总结O5
atitit.提升软件开发效率大的总结O5 #---平台化.组件化 1 #--cbb公用模块的建设 1 #---内部最佳流程方法跟实践的总结 2 #---内部知识体系的建设 2 #---问题Qa库的建 ...
- 使用Charles Proxy提升iOS开发效率
以前做前端开发的时候,使用最多的工具就是 Fiddler ,用来定位问题.模拟特定场景非常方便,极大提升了开发效率.而转做 iOS 开发以后,一大头疼的问题是 Fiddler 没有 Mac 版,幸亏找 ...
- IntelliJ IDEA,酷炫插件系列,提高你的工作效率
今天介绍一下IDEA的一些炫酷的插件,IDEA强大的插件库,不仅能给我们带来一些开发的便捷,还能体现我们的与众不同. 1.插件的安装 打开setting文件选择Plugins选项 Ctrl + Alt ...
随机推荐
- MLlib特征变换方法
Spark1.6.2.2.3 PCA 算法介绍: 主成分分析是一种统计学方法,它使用正交转换从一系列可能相关的变量中提取线性无关变量集,提取出的变量集中的元素称为主成分.使用PCA方法可以对变量集合进 ...
- 【HDU - 1560】DNA sequence (dfs+回溯)
DNA sequence 直接中文了 题目描述 21世纪是生物科技飞速发展的时代.我们都知道基因是由DNA组成的,而DNA的基本组成单位是A,C,G,T.在现代生物分子计算中,如何找到DNA之间的最长 ...
- C#3.0新增功能09 LINQ 基础04 基本 LINQ 查询操作
连载目录 [已更新最新开发文章,点击查看详细] 本篇介绍 LINQ 查询表达式和一些在查询中执行的典型操作. 获取数据源 在 LINQ 查询中,第一步是指定数据源. 和大多数编程语言相同,在使用 ...
- UTF-16 -- 顶级程序员也会忽略的系统编码问题,JDK 错了十年!
Unicode(统一码.万国码.单一码)是计算机科学领域里的一项业界标准,包括字符集.编码方案等.Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一 ...
- 安装解压版MySQL5.76及以上版本 出现服务正在启动-服务无法启动的问题
最近重装了系统,去MySQL官网下载了最新的MySQL5.7.9,我选择的是解压版,安装之后启动服务的时候,提示服务无法启动,在网上找了很多教程,弄了很久都没有弄好,后来还是决定去英文官网找找答案, ...
- JAVA项目从运维部署到项目开发(六. Jenkins之静态页面)
用Git托管静态页面代码,通过Jenkins部署静态页面,是再方便不过的了.本文将介绍如何通过Jenkins部署最新的静态页面代码. 一.Jenkins的配置 1.设置项目名称.参数(环境.分支)等 ...
- Redis(五)--- Redis的持久化RDB与AOF
一.Redis数据库 我们都知道Redis是基于内存的数据库,数据是以key-value键值对的方式存储的,那么key-value键值对是随意放在内存中的么,其实Redis的服务会创建很多的数据库空间 ...
- F#周报2019年第30期
新闻 Fantomas 3.0 宣告.NET Core 3.0预览版7 .NET Core 3.0预览版7中ASP.NET Core与Blazor的升级 Visual Studio 2019版本16. ...
- C#航空查询及预订
关于航空查询及预订项目中出现的问题 namespace Flight{ public partial class Flight : Form { public Flight() { Initializ ...
- springBoot的过滤器,监听器,拦截器
概述 在开发中,我们经常要考虑一些问题,对敏感词进行过滤,用户是否已经登录,是否需要对他的请求进行拦截,或者领导问现在在线人数有多少人?我们如何实现这些功能哪 @WebFilter package c ...