首页 > 其他分享 >10 个解放双手的 IDEA插件,少些冤枉代码(第三弹)

10 个解放双手的 IDEA插件,少些冤枉代码(第三弹)

时间:2024-03-11 15:48:19浏览次数:40  
标签:10 插件 小富 代码 IDEA 程序员 JSON

大家好,我是小富~

好久没发这种实用贴了,最近用到了一些能提升工作效率的IDEA插件,给小伙伴们分享一下。相信我,我分享的这些插件,都是实实在在能解决实际开发场景中痛处的。

以往的两篇IDEA插件分享:

10个 解放双手的 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-caseSNAKE_CASEPascalCasecamelCasesnake_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编程插件,经过我的实际体验后,勉勉强强可以平替GPTCopilot,更重要的是它免费!

该插件可以通过自然语言描述你想要的功能,可直接在编辑器区生成代码;根据代码上下文补全代码;支持根据JUnit、Mockito、Spring Test、unit test、pytest 等框架生成单元测试(和Squaretest一样);它还具备和GPT一样的问答功能。

10、Auto filling Java call arguments

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

总结

感谢这些插件的开发者们,为我们提供了如此便利高效的工具,极大地提升了我们编程的效率。希望大佬们继续为开发者社区带来更多优秀的工具和创新,让编程变得更加愉快和高效。

我是小富~ 下期见!

标签:10,插件,小富,代码,IDEA,程序员,JSON
From: https://www.cnblogs.com/chengxy-nds/p/18066185

相关文章

  • 3-10
    今天完成了第一次数据筛查作业用idea清洗数据,用python完成分析#-*-coding:utf-8-*-importpandasaspdimportmatplotlib.pyplotasplt#从CSV文件中读取数据data=pd.read_csv('zongbiao.csv',encoding='utf-8')#设置中文字体plt.rcParams['font.sans-serif']=['......
  • kylin v10报错:/usr/lib64/security/pam_console.so: cannot open
    报错如下:PAMunabletodlopen(/usr/lib64/security/pam_console.so):/usr/lib64/security/pam_console.so:cannotopenshaaredobjectfile:No>PAMaddmingfaultymodule:/usr/lib64/security/pam_console.so原因分析:麒麟V10环境没有“pam_console.so”动态库。pam_......
  • idea的local history找回git没有push的分支
    git本地项目分支没有push到远程,本地切换分支,删掉本地项目重新远程clone,导致本地没有push的分支丢失。gitclone远程项目在idea找到localhistory,在localhistory可以找到最后一次commit的提交记录:这样删除的代码就能完整找回。......
  • GBU810-ASEMI新能源整流桥GBU810
    编辑:llGBU810-ASEMI新能源整流桥GBU810型号:GBU810品牌:ASEMI封装:GBU-4正向电流(Id):8A反向耐压(VRRM):1000V正向浪涌电流:200A正向电压(VF):1.10V引脚数量:4芯片个数:4芯片尺寸:MIL功率(Pd):中小功率设备工作温度:-55°C~150°C类型:插件整流桥、整流方桥GBU810整流桥描述:ASEMI品......
  • 【2024-03-10】连岳摘抄
    23:59风和日暖,令人愿意永远活下去。世上一切算得什么,只要有你。                                                 ——朱生豪太多人耽误自己,太多父母耽误孩子,都是在......
  • C#100个经典面试题
    原文链接:https://www.cnblogs.com/zxdz/p/13370024.html1..NET和C#有什么区别答:.NET一般指.NETFrameWork框架,它是一种平台,一种技术。C#是一种编程语言,可以基于.NET平台的应用。2.一列数的规则如下:1、1、2、3、5、8、13、21、34......求第30位数是多少,用递归算法实现。答:p......
  • ULBF810-ASEMI新能源整流桥ULBF810
    编辑:llULBF810-ASEMI新能源整流桥ULBF810型号:ULBF810品牌:ASEMI封装:ULBF-4最大重复峰值反向电压:1000V最大正向平均整流电流(Vdss):8A功率(Pd):中小功率芯片个数:4引脚数量:4类型:贴片整流桥、整流桥正向浪涌电流:350A正向电压:1.10V最大输出电压(RMS):封装尺寸:如图工作温度:-55......
  • [oeasy]python0010_怎么用命令行保存文件
    编写py文件......
  • 10_装饰模式
    装饰模式是一种结构型设计模式,它允许我们在不改变现有对象结构的情况下,动态地向对象添加额外的功能。装饰模式有四个主要角色:抽象组件(Component):定义了一个抽象接口,用于被具体组件和具体装饰器实现。具体组件(ConcreteComponent):实现了抽象组件接口,是被装饰的对象。抽象装......
  • P3878 [TJOI2010] 分金币
    题意有\(n\)枚金币,第\(i\)枚价值为\(s_i\)。分成两部分,使得两部分数量之差不超过\(1\),求价值之差最小是多少。Sol模拟退火!其实这个算法没什么好说的。设当前最优解与当前解的差为\(\DeltaE\)。那么当前状态发生转移的概率为\(P(f(n))=\begin{cases}1,&\text{......