12款神级idea插件,让你少些80%代码

2024-02-02 15:04

本文主要是介绍12款神级idea插件,让你少些80%代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

图片

        日常的业务功能开发,大部分情况下,核心代码差不多只占了项目的20%,剩下的80% 基本就是一些体力活,配置项等;这80%的代码,却消耗了我们大量的时间,而这部分代码,也不会对我们带来大的提升,今天给大家推荐12款我个人常用的优质的插件,旨在快速帮大家完成这80%体力代码,将更多的时间投入在核心功能的开发,告别加班,告别996!

图片

1Easy Code

一个能帮我们快速将表映射成 Spring 项目中EntityControllerDerviceDaoMapper等文件,快速实现基础功能的插件

插件安装

插件中心搜索Easy Code 安装即可

图片

插件使用

第一步,添加一个数据源,连接对应的数据库

图片

第二步

在数据源中找到对应的表,右键选择Easy Code,即可快速生成

图片

2Easy Javadoc

一键快速帮你生成属性、方法、类文档注释的插件,文档注释轻松搞定

安装

插件中心搜索Easy Javadoc

图片

插件需要用到在线翻译,以下是各个平台api key的申请入口,可以根据自己的喜欢,申请对应的key,个人使用的话,每月的免费额度基本都能满足

  • 有道智云翻译申请地址:https://ai.youdao.com/

  • 百度翻译申请地址:https://api.fanyi.baidu.com/doc/21

  • 腾讯翻译申请地址:https://cloud.tencent.com/document/product/551/7372

  • 阿里云翻译申请地址:https://www.aliyun.com/product/ai/alimt

  • 微软翻译申请地址:https://azure.microsoft.com/

  • 谷歌翻译(需要魔法)申请地址:https://cloud.google.com/

配置

file -> settings -> other settings - EasyDoc中找到配置界面,分别配置上翻译的api key(必须)、自定义词库映射(可选)、模板信息(可选)

图片

win 快捷键

快捷键作用域说明
ctrl \类、方法、属性(光标放上面就行,不要双击选中!)生成当前文档注释
ctrl \选中的中文生成选中的中文的英文命名
ctrl \选中的非中文弹框展示翻译结果
ctrl shift \生成全部文档注释

mac 快捷键

快捷键作用域说明
command \类、方法、属性(光标放上面就行,不要双击选中!)生成当前文档注释
command \选中的中文生成选中的中文的英文命名
command \选中的非中文弹框展示翻译结果
command shift \生成全部文档注释

图片

其中 "dashabi" 就使用了自定义"小可爱"的映射

图片

问题说明

  • 不翻译

    按了快捷键,只生成了如下的空注释

    /**
    *
    **/
    

    就是翻译配置未生效,可以到各个翻译平台申请一下api key,配置上即可

  • 快捷键无效

    快捷键有可能被其他软件给占用了,可以在Settings -> Keymap -> Plug-ins -> Easy Javadoc中找到并设置一个新的快捷键

3Bito

一款非常实用的智能化聊天机器人插件,集成了GPT,可以为开发人员提供更快更准确的交互编程环境,不用魔法也能使用,能大大提升开发效率,之前也给大家推荐过,详细的使用教程可参考:IDEA 用上这款免费 GPT4 插件,生产力爆表了

4aiXcoder

国内首款基于深度学习的智能化软件开发工具,利用AI技术实现代码⾃动⽣成、代码⾃动补全、代码智能搜索等功能,提升开发者开发效率与代码质量

安装

图片

使用

  • 开启云端服务

    这里需要注册账号,登录,按着提示,一步步操作即可

    图片

  • 代码补全

    图片

5Lombok

Lombok 是一款针对 Java 语言的编译时插件,用于通过注解自动化生成重复的代码,减少一些常规的 Java 代码书写。

依赖

<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.26</version>
</dependency>

插件

Lombok 不仅需要依赖,还需要安装对应的插件,在插件中心搜索Lombok,安装重启即可

图片

使用

在使用 Lombok 之前,一个对象的get、set、tostring,构造方法等等,写起来还是非常麻烦的,一个简单的对象,就需要写下面这么多代码:

/*** @author 公众号:一行Java* @title: UserInfo* @projectName ehang-spring-boot* @description: TODO* @date 2023/9/15 9:15*/
public class UserInfo {private String userName;private Integer age;public UserInfo() {}public UserInfo(String userName, Integer age) {this.userName = userName;this.age = age;}public String getUserName() {return userName;}public void setUserName(String userName) {this.userName = userName;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}@Overridepublic boolean equals(Object o) {if (this == o) return true;if (o == null || getClass() != o.getClass()) return false;UserInfo userInfo = (UserInfo) o;return new EqualsBuilder().append(userName, userInfo.userName).append(age, userInfo.age).isEquals();}@Overridepublic int hashCode() {return new HashCodeBuilder(17, 37).append(userName).append(age).toHashCode();}@Overridepublic String toString() {return "UserInfo{" +"userName='" + userName + '\'' +", age=" + age +'}';}
}

但一旦引入 Lombok ,这个事情就变的非常简单,三个注解就能实现上面的所有方法,代码也变得非常简洁,清爽;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;/*** @author 公众号:一行Java* @title: UserInfo* @projectName ehang-spring-boot* @description: TODO* @date 2023/9/15 9:15*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserInfo {private String userName;private Integer age;}

Lombok 支持的注解及说明

  1. @Getter / @Setter: 自动生成字段的 getter 和 setter 方法。

  2. @ToString: 自动生成 toString 方法。默认情况下,生成包含所有字段的 toString 方法。

  3. @EqualsAndHashcode: 自动生成 equals 和 hashCode 方法。默认情况下,生成包含所有非静态、非transient 字段的 equals 和 hashCode 方法。

  4. @NoArgsConstructor / @RequiredArgsConstructor / @AllArgsConstructor: 自动生成无参构造方法、必须参数构造方法、全参构造方法。

  5. @Data: 自动生成 getter、setter、equals、hashCode、toString 方法。

  6. @Builder: 自动生成建造者模式的代码,用于创建复杂对象。

  7. @Log: 自动生成日志记录变量,支持不同的日志框架,例如 @Slf4j 用于集成 SLF4J。

  8. @NoArgsConstructor(force = true) / @AllArgsConstructor(force = true): 自动生成无参构造方法、全参构造方法,并将字段设置为 final。

  9. @Cleanup: 自动管理资源,主要用于清除需要手动释放的资源,例如 IO 流。

  10. @SneakyThrows: 在方法体中自动捕捉并重新抛出异常,无需显式地进行异常处理。

  11. @NonNull: 生成非空检查代码。

  12. @Accessors: 提供链式调用风格的 setter 和 getter 方法。

  13. @Value: 创建不可变类,字段为 final,并自动生成 getter 方法。

  14. @Wither: 自动生成属性的不可变更新方法。

  15. @EqualsAndHashCode(callSuper = true): 生成包含父类字段的 equals 和 hashCode 方法。

6被禁用Lombok

当你所在的公司/团队禁止使用 Lombok 插件,只允许使用传统的方式来写get、set、toString这些基础方法,有没有方式能快速生成这些繁琐的体力活儿呢?IDEA 其实已经帮我们内置了快速生成这些方法的功能;

按下快捷键Alt + Insert

或者在对象中点击鼠标右键,选择Generate...

图片

选择你要生成的内容,就能快速生成对应的方法

图片

7GsonFormatPlus

一款用于快速将 Json 转换成 Java 对象的插件;现在的系统,前后端交互,绝大部分都使用了 Json ,因此在解析 Json 的时候,都需要一个对象来接收,使用这块工具,就可以通过 Json 文本,快速生成一个用于接收的 Java 对象,省去了逐个手敲属性的繁琐体力;

安装插件

在插件中心搜索GsonFormatPlus,安装即可;

图片

使用

使用快捷键:Alt + S

或者使用 Alt + Insert,然后选择GsonFormatPlus

又或者,在对象中点击鼠标右键,选择Generate,再选择GsonFormatPlus

左侧粘贴 Json 文本,点击 OK ,选择要生成的属性,下一步即可完成

图片

8GenerateAllSetter

一款一键调用set、get方法的插件;当开发中遇到一个大对象需要初始化,或者要获取一个大对象中的属性时,就单纯是调用他的get、set方法,就能让人写的人手软,这款插件就能完美的帮我们解决这个体力活。

插件安装

图片

插件使用

  • 一键调用set,get方法

    首先,鼠标的光标放在对象所处的行

    然后使用快捷键Alt + Enter,选择是生成get还是set,几个生成,set的生成有两种方式,一种是不赋值,一种是赋予属性的默认值,可以根据自己的实际情况来定:

    图片

  • 一键转换对象

    当我们需要做对象转换时,比如,模型对象转换成 DTO 对象,也可以借助这个插件一键生成

    图片

9String Manipulation

String 是使用最为频繁的数据类型,String Manipulation 插件能帮我们快速完成 String 的转换,如:大小写切换,排序,递增,转义,编码等。还支持对字符串的各种加、解密(MD5、Base64等)操作;基本包含了 String 常用的所有操作

安装

图片

快捷键

Alt + m

使用

以下是驼峰命名转换、加解密、大小写转换的示例

图片

还有更多的功能,可以根据自己的需要来选用

图片

10Restfultoolkit

一套 RESTful 服务开发辅助工具集,完美代替Postman;在 IDEA 中即可完成接口的测试,同时也能快速所搜接口,大大提高我们的检索,测试效率。

安装

插件中心搜索Restfultoolkit 即可快速安装

图片

快捷键

Ctrl + Alt + N

使用

  • 快速搜索接口

    当有Bug的时候,后端开发人员可能经常需要根据接口名称/地址来找到接口位置,全局的搜索Ctrl + Shift + R 是搜索的所有内容,要筛选出想要的内容还挺麻烦的;如果是自己写的代码,找起来也还能接受,一旦项目大,代码不熟悉,就如同大海捞针;那么就可以借助这个工具,来快速搜索接口,快捷键:Ctrl + Alt + N

    图片

  • 接口测试

    右侧的菜单中包含了项目中的所有接口,可以直接编辑请求对象快速发起接口测试

    图片

  • 对象转Json

    前面介绍了如何将 Json 串转换成 Java 对象,借助这个插件,就能快速将对象转换成 Json 文本串

    图片

11Key promoter X

当年,从 Eclipse 转 IDEA 的时候,快捷键就是最大的障碍之一;能熟练的使用快捷键,将能大大提高编码的效率;Key promoter X 就是一款协助记忆快捷键的插件

安装

插件中心搜索Key promoter X 即可

图片

效果

当你没使用快件操作某个功能时,插件就会提醒你其对应的快捷键是什么,日积月累,慢慢记忆

图片

12Free Mybatis plugin

一款能帮助我们在 MyBatis 中实现 Mapper 与 xml 之间跳转的插件

安装

插件中心搜索Free Mybatis plugin

图片

使用

图片

图片


熟练运用这12款插件,不出意外,相信大家的开发效率一定会有一个质的飞跃...

这篇关于12款神级idea插件,让你少些80%代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/671092

相关文章

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W

使用Spring Cache本地缓存示例代码

《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案

Mac电脑如何通过 IntelliJ IDEA 远程连接 MySQL

《Mac电脑如何通过IntelliJIDEA远程连接MySQL》本文详解Mac通过IntelliJIDEA远程连接MySQL的步骤,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟... 目录MAC电脑通过 IntelliJ IDEA 远程连接 mysql 的详细教程一、前缀条件确认二、打开 ID

MySQL的配置文件详解及实例代码

《MySQL的配置文件详解及实例代码》MySQL的配置文件是服务器运行的重要组成部分,用于设置服务器操作的各种参数,下面:本文主要介绍MySQL配置文件的相关资料,文中通过代码介绍的非常详细,需要... 目录前言一、配置文件结构1.[mysqld]2.[client]3.[mysql]4.[mysqldum