首页 > 其他分享 >12 款神级 IDEA 插件

12 款神级 IDEA 插件

时间:2023-09-18 14:23:12浏览次数:43  
标签:userName 插件 12 款神级 age 生成 快捷键 public

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

 一、Easy Code

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

插件安装

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

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

 第二步

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

 二、Easy 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中找到并设置一个新的快捷键

三、Bito

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

四、aiXcoder

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

安装

使用

开启云端服务

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

 代码补全

 五、Lombok

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;
    }

    @Override
    public 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();
    }

    @Override
    public int hashCode() {
        return new HashCodeBuilder(17, 37)
                .append(userName)
                .append(age)
                .toHashCode();
    }

    @Override
    public 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 方法。

六、被禁用Lombok

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

按下快捷键Alt + Insert

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

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

 七、GsonFormatPlus

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

安装插件

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

使用

使用快捷键:Alt + S

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

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

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

 八、GenerateAllSetter

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

插件安装

插件使用

一键调用set,get方法

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

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

一键转换对象

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

九、String Manipulation

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

安装

快捷键

Alt + m

使用

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

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

 十、Restfultoolkit

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

安装

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

快捷键

Ctrl + Alt + N

使用

快速搜索接口

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

接口测试

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

对象转Json

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

 十一、Key promoter X

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

安装

插件中心搜索Key promoter X 即可

效果

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

 十二、Free Mybatis plugin

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

安装

插件中心搜索Free Mybatis plugin

使用

 原文地址:https://mp.weixin.qq.com/s/I8pVGpFjkDLE3dzrwERWfQ

 

标签:userName,插件,12,款神级,age,生成,快捷键,public
From: https://www.cnblogs.com/abel-he/p/17711761.html

相关文章

  • VCSA证书过期时当存在第三方的插件或解决方案证书更新报错问题处理
    VCSA证书过期时当存在第三方的解决方案证书更新报错问题处理  测试环境存在Zerto时已经通过验证TaskSteps:SSHtoPSCRuntheCertificateManagertoolfrom /usr/lib/vmware-vmca/bin/certificate-managerSelecttoReplaceMachineSSLCertificatewithCustomSig......
  • WEB组态编辑器插件(BY组态)介绍
    BY组态是一款非常优秀的纯前端的【web组态插件工具】,采用标准HTML5技术,基于B/S架构进行开发,支持WEB端呈现,支持在浏览器端完成便捷的人机交互,简单的拖拽即可完成可视化页面的设计。可无缝嵌入到vue项目,react项目等,由于是原生js开发,对于前端的集成没有框架的限制。可快速构建和部署......
  • 第六节:12306下单逻辑深度剖析优化
    一.        二.        三.         !作       者:Yaopengfei(姚鹏飞)博客地址:http://www.cnblogs.com/yaopengfei/声     明1:如有错误,欢迎讨论,请勿谩骂^_^。声     明2:原创博客请在转载......
  • 虚拟机VMware12安装激活(超详细教程)适用于Win7版本
    1、下载VMware-workstation链接:https://pan.baidu.com/s/1BTHgStcKX38Ysx8MDqJEXg?pwd=h5hu (里面含激活教程和许可证秘钥)2、解压后执行VMware-workstation3、进入安装界面,点击【下一步】4、选择“增强型键盘驱动程序”, 点击【下一步】 5、点击【下一步】 6、继续......
  • 2021-7-12-Holiday1
    layout:posttitle:xtx暑假第一周日志categories:日志tags:-日志-2021暑期日志BGImage:'https://github.xutongxin.me/https://raw.githubusercontent.com/xutongxin1/PictureBed/master/img0/20210719002113.png'jekyll-theme-WuK:musicid:'1406......
  • 2001-12-24-404
    layout:commentstitle:404permalink:/404#带`/`后缀的被判定成目录,不会被访问到jekyll-theme-WuK:comments:append:|<scriptsrc='https://qzonestyle.gtimg.cn/qzone/hybrid/app/404/search_children.js'async='async'......
  • 2001-12-24-tags
    layout:pagetitle:标签permalink:/tags/jekyll-theme-WuK:default:sidebar:open:truetags:pie_chart:#显示一个标签的饼状统计图,需要引入mermaidenable:falsecount:true#统计每个标签下文章的数量toc:#在正文里显示一个......
  • 2020-12-21-两轮平衡小车探索
    layout:posttitle:两轮平衡小车探索categories:日志tags:-开发-开发任务BGImage:'https://github.xutongxin.me/https://raw.githubusercontent.com/xutongxin1/PictureBed/master/img0/20201220234325.png'jekyll-theme-WuK:musicid:'744590......
  • 2020-12-17-xtx的日常开发日记
    layout:posttitle:xtx第15周日常开发日记categories:日志tags:-日志-2020日志BGImage:'https://cdn.jsdelivr.net/gh/xutongxin1/xutongxin1.github.io@bebc52fb1b67a08f8db0026051b9716a88a37900/asset/%E6%97%A5%E5%BF%97/75065066_p0.jpg'jekyll-theme-W......
  • 2020-12-17-xtx第15周工程开发日志
    layout:posttitle:xtx第15周工程开发日志categories:日志tags:-日志-2020日志BGImage:'https://github.xutongxin.me/https://raw.githubusercontent.com/xutongxin1/PictureBed/master/img0/20201220234325.png'jekyll-theme-WuK:musicid:'744590'xtx......