你可能需要的IDEA-Java开发插件

Idea开发插件

Alibaba Cloud AI Coding Assistant

阿里云智能编码插件(Alibaba Cloud AI Coding Assistant)是一款AI编程助手,它提供代码智能补全和代码示例搜索能力,帮助你更快更高效地写出高质量代码。
在这里插入图片描述
让我觉得比较有意思的是能够通过你想实现的功能描述搜索github开源的全网优质开源代码作为参考,非常赞。
官网地址:https://alibaba-cloud-toolkit.github.io/cosy

Alibaba Java Coding Guidelines

在这里插入图片描述

Alibaba Java Coding Guidelines 是一个专注于Java代码规范的开发者社区项目,目的是让开发者在编写Java代码时更加规范、更加可读、更加可维护。

规范主要包括以下几个方面:

命名约定:规定了Java类、方法、变量等命名的规范,要求所有名称以小写字母开头,单词之间用下划线分隔,同时禁止使用汉语、拼音、拼英混拼等不规范的命名方式。
编码规范:规定了Java代码的格式和风格,包括代码缩进、空格使用、注释格式等,要求开发者按照统一的规范编写代码。
异常处理:规定了Java代码中异常处理的规范,要求开发者在处理异常时使用适当的语言表达式、异常对象、异常超类等,避免程序崩溃或产生不良后果。
并发编程:规定了Java并发编程的规范,包括线程安全、锁机制、并发编程技巧等,要求开发者编写出高效、安全、可靠的并发程序。
测试驱动开发:规定了Java测试驱动开发的规范,要求开发者在编写代码时始终以测试为导向,编写出高效、可靠、易于维护的代码。

相关的规范说明有具体的资源可以学习参考:https://github.com/alibaba/p3c/blob/master/Java%E5%BC%80%E5%8F%91%E6%89%8B%E5%86%8C(%E9%BB%84%E5%B1%B1%E7%89%88).pdf

对于有些规范能够进行一键自动修复,这个功能不错,就是能自动修复的缺陷有限。

RestfulTool

在这里插入图片描述
RestfulTool 是一个基于 IntelliJ IDEA 的 RESTful Web 服务开发工具,它提供了一个在线的 HTTP 调试器,可以帮助开发人员快速定位和解决 RESTful Web 服务的调试问题。

RestfulTool 插件主要特点如下:
实时 HTTP 调试:通过 IntelliJ IDEA 的实时 HTTP 调试器,可以实时查看服务的响应状态和请求参数,帮助开发人员快速定位和解决问题。
多种 HTTP 方法支持:RestfulTool 支持多种 HTTP 方法,包括 GET、POST、PUT、DELETE 等,方便开发人员根据需求选择调试。
RESTful API 支持:RestfulTool 提供了 RESTful API 支持,可以帮助开发人员快速构建 RESTful Web 服务。

能够快速扫描springboot web框架的接口,如下图,非常方便。
在这里插入图片描述

lombok

Lombok通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,如java对象的set和get函数。
使用lombok需要工程pom文件依赖lombok包和装lombok插件,装插件的原因是idea本身无法识别lombok的语法,因此在团队内使用lombok需要通知到位,最新的idea版本默认带了lombok插件,所以只需要pom文件更新依赖即可。

以下是代码示例

import lombok.Data;  
  
@Data
public class Example {  
  
    private String name;  
    private int age;  
  
    public Example(String name, int age) {  
        this.name = name;  
        this.age = age;  
    }   
 
    public static void main(String[] args) {  
        Example example = new Example("John", 30);  
        System.out.println(example.getName());  
        System.out.println(example.getAge());  
    }  
}

MyBatis-Plus

在这里插入图片描述

MyBatis-Plus 是一个 MyBatis 增强版工具,在 MyBatis 上扩充了其他功能没有改变其基本功能,为了简化开发提交效率而存在。

MyBatis-Plus 主要有以下特点:

简化开发:MyBatis-Plus 只做增强不做改变,为简化开发、提高效率而生。
无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑。
损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作,BaseMapper 强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求,简单的CRUD操作不用自己编写。
支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错。
内置性能分析插件:可输出 SQL 语句以及其执行时间,建议开发测试时启用该功能,能快速揪出慢查询。

因此觉得以前使用MyBatis需要配置大量xml文件很繁琐,使用这个插件会非常爽,前提你对这些通用内置sql操作足够熟悉,避免因为使用通过内置sql操作出现bug。

官网地址:https://www.baomidou.com/

Maven Helper

在这里插入图片描述

Maven Helper 插件是一个用于排查 Maven 项目中 JAR 包冲突的插件。它提供了一些便捷的功能,可以帮助开发人员更快速、更有效地排查和解决 JAR 包冲突问题。以下是 Maven Helper 插件的一些主要特性:

快速查找和排除冲突的依赖项:Maven Helper 可以帮助开发人员快速找到和排除冲突的依赖项。只需右键点击 pom.xml 文件并选择 “Find Conflicts” 或 “Find Dependencies” 选项,即可查看项目中依赖的 JAR 包及其版本。
运行 Maven 命令:Maven Helper 可以运行 Maven 命令,以检查项目的依赖关系并解决冲突。只需右键点击 pom.xml 文件并选择 “Run Maven” 或 “Run Maven with Dependency Checks” 选项,即可运行 Maven 命令并查看输出结果。
调试 Maven 构建过程:Maven Helper 可以帮助开发人员调试 Maven 构建过程中的问题。只需右键点击 pom.xml 文件并选择 “Run Maven” 或 “Run Maven with Dependency Checks” 选项,并在输出结果中查找错误信息,即可逐步排查问题并解决冲突。
搜索 JAR 包:Maven Helper 可以帮助开发人员在项目中搜索特定的 JAR 包。只需右键点击项目中的 JAR 包并选择 “Find in Libraries” 或 “Find in Archives” 选项,即可搜索并列出项目中所有引用该 JAR 包的地方。
在这里插入图片描述

Rainbow Brackets

在这里插入图片描述

Rainbow Brackets是一个文本编辑器插件,用于帮助程序员识别代码中括号(包括圆括号、方括号和大括号)的嵌套层次。该插件通过在括号周围添加不同颜色的高亮显示来实现这一目的。在编写代码时,括号的嵌套层次很容易混淆,特别是当代码变得越来越复杂时。使用 Rainbow Brackets,程序员可以快速准确地识别括号的嵌套层次,从而更轻松地编写和维护代码。

Rainbow Brackets 支持多种文本编辑器,包括 Visual Studio Code、Sublime Text、Atom等。它是一个开源项目,可以免费下载和使用。

除了高亮显示括号嵌套层次,Rainbow Brackets 还提供了其他功能,如:

支持自定义颜色:用户可以根据自己的喜好或者需要,自定义括号的颜色。
智能提示:当程序员在括号周围输入空格或其他字符时,Rainbow Brackets 会自动提示可能的嵌套层次。
折叠功能:当程序员在括号周围输入空格或其他字符时,可以折叠括号以便更好地阅读代码。
代码高亮显示:当程序员在括号周围输入空格或其他字符时,可以将括号及其内容高亮显示,以便更好地阅读和编辑代码。

在这里插入图片描述

metricsreload

在这里插入图片描述
metricsreload 是一款开源的代码复杂度度量工具,可以用于评估代码的复杂性。它基于 Cyclomatic Complexity 算法,可以计算代码的圈复杂度、测试用例数、方法复杂度等多种复杂度指标。

追求代码极致性能/代码需要的插件。

题外话:AI辅助工具

Cursor

在这里插入图片描述

Cursor AI是一个基于人工智能的代码生成器,它可以根据用户的输入或需求,自动生成或修改代码,也可以和用户交流,解释或优化代码。Cursor AI支持多种编程语言,如 Python, Java, C#, JavaScript 等,并且可以在不同的操作系统上运行,如 Mac, Windows, Linux 等。

Cursor AI的工作原理是基于人工智能的自然语言处理和代码生成技术。它使用了 GPT-4 这个强大的深度学习模型,它可以根据大量的文本数据,学习语言的规律和模式,并且可以根据给定的输入,生成符合语法和逻辑的文本输出。Cursor AI利用 GPT-4 的能力,训练了一个专门用于编程的模型,它可以理解用户的输入,生成或修改相应的代码,也可以回答用户的问题,解释或优化代码。Cursor AI还可以根据用户的反馈,不断调整和改进自己的模型,提高生成代码的质量和准确性。

安装登录官网 https://www.cursor.so/ 下载安装 Cursor。笔者使用的是Mac版本,安装完成后,打开 Cursor,就可以看到一个简洁的编辑器界面。使用之前我们需要新注册一个Cursor账号使用注册后的账号登录Cursor。

使用Cursor AI的核心功能是生成或编辑代码和和代码对话。我们只需掌握两个快捷键 ⌘+K :生成或编辑代码,在弹出的对话框中输入你想要生成或修改的代码的描述。例如“写一个冒泡排序算法”或“优化这段代码” ⌘+L :和代码对话,在弹出的对话框中输入你想要问的问题。例如选中某段代码,输入 “这段代码是做什么的”或“这段代码有什么问题”。

遗憾的是目前不支持Idea,看软件框架主要依赖VS Code。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/15726.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CentOS防火墙的常用快捷命令

CentOS是免费开源的Linux发行版之一,它兼容RHEL并由社区进行维护,大多数美国服务器提供对该系统支持。在使用CentOS系统时,您需要了解一些常用命令,比如开启、查看、关闭防火墙等。本文将介绍下CentOS防火墙的常用命令。 CentOS是一种面向企业级服务器环境的Linux发行版,…

直击德国PLS展,联诚发倾力打造沉浸式视觉盛宴!

当地时间4月25-28日,备受关注的2023德国法兰克福国际专业灯光音响展ProlightSound(以下简称“PLS展”)在德国法兰克福盛大召开。联诚发携多款创新产品及多领域的应用解决方案精彩亮相,为全球客户打造沉浸式视觉盛宴,展…

JavaScript详解

一、前置知识 1.1第一个JS程序 JavaScript 代码可以嵌入到 HTML 的 script 标签中。 1.2JS书写格式 1.2.1行内样式 直接嵌入到html元素内部 1.2.2内嵌格式 1.2.3外部格式 注意这种情况下,script标签中间不能写任何代码,必须空着,就算…

java内存占用过大分析,mat内存快照分析

背景 最近功能模块上线后,生产内存占用显著提升,查看gc日志发现年轻代频繁从2G回收到60M左右,猜测是在方法中频繁创建大对象导致,由于一时间无法通过review代码找出问题所在,只好将生产jvm内存快照dump后通过java mem…

HCIA-RS实验-STP和RSTP(2)

接上一篇文章;其他的不多说,新建一个新的配置设备;如果接上一个实验的配置的话,建议先把所有配置删除后再执行;新的拓扑也与上一个实验一致; 目录 创建新配置 配置RSTP 查看stp版本 配置边缘端口 …

深度学习 GNN图神经网络(四)线性回归之ESOL数据集水溶性预测

线性回归之ESOL数据集水溶性预测 一、前言二、ESOL数据集三、加载数据集四、数据拆分五、构造模型六、训练模型七、测试结果八、分类问题参考文献 一、前言 本文旨在使用化合物分子的SMILES字符串进行数据模型训练,对其水溶性的值进行预测。 之前的文章《深度学习…

vue - pc端实现对div的拖动功能

实现对div的拖动功能,需要先要知道以下的一些原生事件和方法; 1,事件: 方法描述onmousedown鼠标按钮被按下onmousemove鼠标被移动onmouseup鼠标按键被松开 2,方法: 方法描述event.clientX返回当事件被触发时鼠标指针相对于浏览…

02 【Sass语法介绍-变量】

sass有两种语法格式Sass(早期的缩进格式:Indented Sass)和SCSS(Sassy CSS) 目前最常用的是SCSS,任何css文件将后缀改为scss,都可以直接使用Sassy CSS语法编写。 所有有效的 CSS 也同样都是有效的 SCSS。 Sass语法介绍-变量 1.前言 Sass …

【VM服务管家】VM4.0平台SDK_2.5 全局工具类

目录 2.5.1 全局相机:全局相机设置参数的方法2.5.2 全局相机:获取全局相机列表的方法2.5.3 全局通信:通信管理中设备开启状态管理2.5.4 全局通信:接收和发送数据的方法2.5.5 全局变量获取和设置全局变量的方法 2.5.1 全局相机&…

2023-4-27-深入理解C++指针类型间强制转换

🍿*★,*:.☆( ̄▽ ̄)/$:*.★* 🍿 💥💥💥欢迎来到🤞汤姆🤞的csdn博文💥💥💥 💟💟喜欢的朋友可以关注一下&#xf…

记一次峰回路转的注入

0X01 背景 自己之前写过一篇记录,当时是由于之前是一位校友刚做开发,叫我友情帮忙测试一波,由于是开发的新手,漏洞比较多,所以直接从注入开始讲起,但是到getshell的过程也算是一场峰回路转再跌跌撞撞的路程…

【Java笔试强训 17】

🎉🎉🎉点进来你就是我的人了博主主页:🙈🙈🙈戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔🤺🤺🤺 目录 一、选择题 二、编程题 🔥杨辉三角…

洞见数字时代的创新原力,数云原力大会暨2023TECH第五届数字中国技术年会开幕

4月25日,神州控股、神州信息、神州数码集团共同主办的数云原力大会暨2023TECH第五届数字中国技术年会开幕。开幕式上,数百位投身并关注数字技术、数字产业发展的学者、技术专家、从业者、行业用户齐聚一堂,围绕云原生、数字原生、大数据、金融…

这一次,让Kotlin Flow 操作符真正好用起来

前言 Kotlin Flow 如此受欢迎大部分归功于其丰富、简洁的操作符,巧妙使用Flow操作符可以大大简化我们的程序结构,提升可读性与可维护性。 然而,虽然好用,但有些操作符不太好理解,可惜的是网上大部分文章只是简单介绍其…

吴恩达 Chatgpt prompt 工程--1.Guidelines

课程链接 Setup #安装 !pip install openai#设置key !export OPENAI_API_KEYsk-... # or #import openai #openai.api_key "sk-..."import openai import osfrom dotenv import load_dotenv, find_dotenv _ load_dotenv(find_dotenv())openai.api_key os.geten…

记一次SSRF漏洞的学习和利用

导语:本文主要记录一次我们在复盘嘶吼网站渗透报告时遇到的一个SSRF漏洞。 1.前言 本文主要记录一次我们在复盘嘶吼网站渗透报告时遇到的一个SSRF漏洞。此漏洞并结合腾讯云的API接口,可以获取大量嘶吼服务器的敏感信息。利用这些敏感信息,又…

android10 关闭默认输入法的“更正建议”

1. 场景 使用系统默认的输入法,在进行输入时,在输入法上方,会显示更正建议列表,同时会干扰我们的输入内容:会自动补全到输入框,而且删除不掉,甚至越删越多,非常讨厌。 如下&#x…

一段凄惨Android 面试经历分享,败在了项目架构原理上……

大家应该看过很多分享面试成功的经验,但根据幸存者偏差的理论,也许多看看别人面试失败在哪里,对自己才更有帮助。 这是一位网友分享的面试经历,他准备了3个月,刚刚参加完字节跳动的第三面,视频面&#xff…

都23年了你还记得渐进式框架是什么意思吗

vue 文章目录 vue前言一、眼见为实举个栗子二、渐进式的优势 前言 渐进式框架是一种能够逐步增强应用功能的框架,它允许开发者在不影响应用性能的情况下,逐步添加新的功能和特性。Vue.js提供了一些基础功能,如数据绑定和组件化,然…

这8个摸鱼神器,千万别让你老板知道!

工欲善其事,必先利其器,对于程序员来说也是如此,想早点下班就不能死脑筋,必须借助于一些开发工具来提高自己的工作效率,小编选取了8款任务/项目管理工具,能助你[打通任督二脉],工作效率大大提升…