10 个解放双手的 IDEA插件,少些冤枉代码(第三弹)
大家好,我是小富~
好久没发这种实用贴了,最近用到了一些能提升工作效率的IDEA插件,给小伙伴们分享一下。相信我,我分享的这些插件,都是实实在在能解决实际开发场景中痛处的。
以往的两篇IDEA插件分享:
10个解放双手的 IDEA 插件,这些代码真不用手写(第二弹)
1、POJO to JSON
开发工作中,常常在设计完API后,会使用如GsonFormat工具来将设计文档上的JSON格式数据生成Java实体类,这可以节省很多时间。
不过,在某些情况下,我们需要将已有实体类转换为JSON格式数据,那我通常不得不依赖于手动执行单元测试或在main方法中,使用JSON处理库(例如fastjson等)来实现对象到JSON字符串的转换,是一件比较麻烦的事情。

使用POJO to JSON插件就让这件事容易的多,只要在实体类名上右键执行MakeJson,即可生成该类对应的JSON数据,而且它支持多层级的对象。

2、Cool Request
Cool Request是一款基于IDEA的HTTP调试工具,可以看成是轻量版的postman,它会自动扫描项目代码中所有API路径,按项目分组管理。一个类被定义为Controller且其中的方法被@RequestMapping或者@XXXMapping注解标注以后就会被扫描到。

对应方法左侧会出现一个标志,点击展开右侧边栏就可以像在Postman中一样进行调试。它支持CURL命令的导入导出、环境设置等功能,基本满足开发调试需求。而且,还支持将API导出到Apifox,使得文档导出变得非常简单。整体而言,这个功能确实很实用。

3、CamelCase
CamelCase是个命名风格转换插件,在进行代码规范扫描审查时,我觉得这个插件非常实用,修改起来很简单。举个例子:假设我将静态变量命名为aaaBaa,但作为一名资深程序员来说,这样命名静态变量显然不够专业啊!
public static final String aaaBaa = "aaaBaa";
为了更加规范些,我们要将变量名改为大写字母下划线分割的格式。使用CamelCase可以在 kebab-case,SNAKE_CASE,PascalCase,camelCase,snake_case 和 空格风格之间切换。
mac快捷键为 ⇧+⌥+ U ,windows 下为 Shift + Alt +U。

4、any-rule
any-rule是一个正则表达式字典库,尽管在日常开发中其使用频率可能不是特别高,但它无疑是一个极为实用的工具。它涵盖了广泛的正则表达式类型,几乎包括了你能想到的所有规则。
使用直接右键选择AnyRule,支持搜索、正则验证、示例展示。

5、Grep Console
Grep Console可以自定义控制台输出格式,对控制台中不同级别的日志设置成不同的颜色。

验证一下不同级别的日志在控制台输出的情况,不同级别显示不同颜色,这样在控制台查看日志就一目了然了。
@Test
public void logTest() {
log.info("公众号:程序员小富");
log.error("公众号:程序员小富");
log.warn("公众号:程序员小富");
log.debug("公众号:程序员小富");
log.trace("公众号:程序员小富");
}

6、GenerateO2O
GenerateO2O插件可以让我们少些很多代码,比如在开发接口时,常常需要将查询得到的PO对象转换为DTO对象。通常情况下,需要手动编写Converter转换方法,但借助这个插件,可以自动生成转化属性的代码,可以少写很多无趣代码。

7、Smart input
Smart input解决了一件很烦的事,它能帮我们在不同的编码区域内切换输入法状态。就是这个插件可以在我要写注释时它切换成中文输入,写代码就会切换成英文输入法,不用在手动切换了。

8、Squaretest
这款插件能够自动生成Mock单元测试,之前我认为它是一个可有可无的插件。直至公司开始实施代码质量管控并将单元测试覆盖率列为KPI的一部分。不过,对于习惯编写单元测试的同学来说,这个插件无疑是一把解放双手的利器!

这个插件生成的mock测试代码基本上可以直接运行,质量很高。不过好像现在收费了,退而求其次可以使用TestMe。
9、TONGYI Lingma
通义灵码是阿里推出的一款AI编程插件,经过我的实际体验后,勉勉强强可以平替GPT、Copilot,更重要的是它免费!
该插件可以通过自然语言描述你想要的功能,可直接在编辑器区生成代码;根据代码上下文补全代码;支持根据JUnit、Mockito、Spring Test、unit test、pytest 等框架生成单元测试(和Squaretest一样);它还具备和GPT一样的问答功能。

10、Auto filling Java call arguments
例如,当在方法A中调用方法B时,由于方法B具有较多参数,使用该插件可以自动填充调用方法的参数,无需逐个手动填写,从而节省大量复制粘贴的操作。

总结
感谢这些插件的开发者们,为我们提供了如此便利高效的工具,极大地提升了我们编程的效率。希望大佬们继续为开发者社区带来更多优秀的工具和创新,让编程变得更加愉快和高效。
我是小富~ 下期见!
10 个解放双手的 IDEA插件,少些冤枉代码(第三弹)的更多相关文章
- 10个 解放双手的 IDEA 插件,这些代码都不用写(第二弹)
本文案例收录在 https://github.com/chengxy-nds/Springboot-Notebook 大家好,我是小富~ 鸽了很久没发文,不写文章的日子真的好惬意,每天也不用愁着写点什 ...
- 10行Python代码自动清理电脑内重复文件,解放双手!
大家好,又到了Python办公自动化系列. 今天分享一个系统层面的自动化案例: 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做 ...
- 分享10款非常有用的 Ajax 插件
这篇文章与大家分享的是10款非常有用的 Ajax 插件,有用于图片的,用于分页的,还有用于导航的.这些作者的想法特别新颖,希望你能从中找到自己需要的插件. 1. AJAX-ZOOM 非常强大的一款插件 ...
- 10款最新流行的 jQuery 插件,值得你收藏
10款最新流行的 jQuery 插件,值得你收藏 http://www.cnblogs.com/lhb25/p/10-new-popular-jquery-plugins-check.html 你应该 ...
- 10个最好的 jQuery 视频插件(转)
在这篇文章中已经收集了 10 个最佳的 jQuery 视频插件,帮助开发人员容易地实现网站播放影片功能.可以显示视频和视频播放列表. 1. Bigvideo.js BigVideo.js 是一个 jQ ...
- 10个漂亮的jQuery日历插件下载【转载】
10个漂亮的jQuery日历插件下载 2013-08-07 标签:jQuery日历插件jQuery日历jQuery插件 日期是非常重要的,随时随地.微薄或网站的日期选取器日历必须在那里.您可以使用 ...
- 写完批处理脚本,再写个Gradle脚本,解放双手
前言 上一篇写个批处理来帮忙干活---遍历&字符串处理中,我们已经学习如何写批处理脚本来帮我们做一些简单的重复性工作,本篇继续来学习如何用 Gradle 写脚本,让它也来帮我们干活 Gradl ...
- 微软已发布 Windows 10 Timeline 功能的官方 Chrome 插件
微软已发布 Windows 10 Timeline 功能的官方 Chrome 插件,这个插件名为 Web Activities,功能是跨 Windows 10 和 Microsoft Launcher ...
- 10款jQuery图片左右滚动插件
在现代的网页设计中,图片和内容滑块是一种极为常见和重要的元素.你可以从头开始编写自己的滑动效果,但是这将浪费很多时间,因为网络上已经有众多的优秀的 jQuery 滑块插件.当然,如果要从大量的 jQu ...
- 绝对震撼 10个实用的jQuery/HTML5插件
在HTML5的世界里,我们见证了无数的特效奇迹,但很多特效我们很难在网页中应用,今天我们要分享10款效果震撼但是又比较实用的jQuery/HTML5插件,希望这些项目在应用的过程中也能给你带来设计灵感 ...
随机推荐
- 手撕Vue-实现将数据代理到Vue实例
前言 经过上一篇文章的学习,完成了 v-on 指令的实现,接下来我们来实现将数据代理到 Vue 实例上. 为什么要完成这个功能呢?因为我们在使用 Vue 的时候,可以直接通过 this.xxx 的方式 ...
- 19.6 Boost Asio 文本压缩传输
Base64是一种二进制到文本的编码方案,用于将二进制数据转换为ASCII字符串格式.它通过将二进制数据流转换为一系列64个字符来工作,这些字符都可以安全地传输到设计用于处理文本数据的系统中. 如下代 ...
- C/C++ 反汇编:分析类的实现原理
反汇编即把目标二进制机器码转为汇编代码的过程,该技术常用于软件破解.外挂技术.病毒分析.逆向工程.软件汉化等领域,学习和理解反汇编对软件调试.系统漏洞挖掘.内核原理及理解高级语言代码都有相当大的帮助, ...
- C#9中使用静态匿名函数
匿名函数是很早以前在C#编程语言中引入的.尽管匿名功能有很多好处,但它们并不便宜.避免不必要的分配很重要,这就是为什么在C#9中引入静态匿名函数的原因.在C#9中,lambda或匿名方法可以具有静态修 ...
- 【链表】双向链表的介绍和基本操作(C语言实现)【保姆级别详细教学】
双向链表 文章目录 前言 双向链表的基本介绍 一些链表的分类 带头双向循环链表的基本结构 双向链表的实现 结点的定义.头指针的创建 开辟结点接口 初始化头结点接口 打印接口 尾插接口 尾删接口 头插接 ...
- java线程池实现多任务并发执行
Java线程池实现多任务并发执行 1️⃣ 创建一些任务来落地多任务并发执行 每一个数组里面的数据可以看成任务,或者是需要并发的业务接口, 数组与数组之间,可以看作为他们之间有血缘关系,简单来说就是: ...
- JuiceFS 在大搜车数据平台的实践
大搜车已经搭建起比较完整的汽车产业互联网协同生态.在这一生态中,不仅涵盖了大搜车已经数字化的全国 90% 中大型二手车商.9000+ 家 4S 店和 70000+ 家新车二网,还包括大搜车旗下车易拍. ...
- Python-单引号、双引号和三引号的作用和区别
(一).作用 1. 单引号:单引号内部为一串字符(str). 2. 双引号:双引号内部为一串字符,双引号内的字符串可以出现单引号(相当于双引号优先级更高),但不能嵌套双引号. 3. 三引号:用于换行输 ...
- 【JS】一个思路搞定三道Promise并发编程题,手摸手教你实现一个Promise限制器
壹 ❀ 引 之前在整理手写Promise相关资料时,在文章推荐区碰巧看到了一道手写Promise并发控制调度器的笔试题(大厂可能爱考),结果今天同事又正好问了我一个关于Promise调度处理的场景问题 ...
- 精读JavaScript模式(九),JS类式继承与现代继承模式其二
壹 ❀ 引 二零一九年的三月二十号,我记录了精读JavaScript模式(八)这篇读书笔记,今天是二零二零年三月十五号,相差五天,其实也算时隔一年,我重新拿起了这本书.当前为什么没继续写下去呢,主要还 ...