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

news2024/11/28 18:50:26

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。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Docker安装在Linux系统上(纯步骤)

Docker安装在Linux系统上操作步骤 本文章只有操作步骤,没有原理解释,只是用来提醒自己安装步骤 下面是docker官网,也有安装详情 https://docs.docker.com/engine/install/centos/ 安装分为四步走 我使用的是CentOS7版本,下面命令…

Linux基本权限

文章目录 前言一、Shell命令以及运行原理1.Shell的定义2.为什么用户不能直接使用kernel? 二、Linux中的权限1.权限是什么?2.如何操作权限呢?(怎么修改权限)1. 修改文件属性2. 修改文件角色 3.为什么要有权限 三、粘滞位…

直接插入排序(Straight Insertion Sort)

本文已收录于专栏 《算法合集》 一、简单释义 1、算法概念 对插入第i个记录时,R1、R2、…、Ri-1均已排好顺序。因此,将第i个记录Ri-1、…、R2、R1进行比较,找到合适的位置插入,他简单明了但是速度很慢。 2、算法目的 把无序数组通…

windows下免费本地部署类ChatGpt的国产ChatGLM-6B

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。 Chat…

禁止右键禁止复制禁止选择网页内容的CSS和JS代码(支持PC和移动端)

禁止右键禁止复制禁止选择网页内容的CSS和JS代码(支持PC和移动端),收藏吧,用得上。 body {-moz-user-select: none;/* Firefox私有属性 */-webkit-user-select: none;/* WebKit内核私有属性 */-ms-user-select: none;/* IE私有属…

项目1登录功能优化(中间件添加操作信息,统一日志输出)

中间件添加操作信息 context增加属性userid用于储存访问者id,便于后期使用中间件添加操作信息 type Context struct { //......,context其他属性 Userid int} 对于添加操作信息的中间件函数 // 添加用户操作中间件func Addoperationmid(db *sql.DB) gee7.HandlerFunc { retu…

SpringBoot【运维实用篇】---- 多环境开发

SpringBoot【运维实用篇】---- 多环境开发 1. 多环境开发(yaml单一文件版)2. 多环境开发(yaml多文件版)3. 多环境开发(properties多文件版)4. 多环境开发独立配置文件书写技巧5. 多环境开发控制 讲的内容距…

【LeetCode】1000题挑战(220/1000)

1000题挑战 没有废话,直接开刷! 目录 1000题挑战 没有废话,直接开刷! 第一题:119. 杨辉三角 II - 力扣(Leetcode) 题目接口 解题思路 代码: 过过过过啦!&#x…

【Python】【进阶篇】13、Django安装与配置教程

目录 Django安装与配置教程1. Windows系统安装Django1) 离线安装2) 在线安装3) 配置Django环境变量4) 检查是否安装成功 2. Linux和Mac系统安装Django1) 使用终端在线安装2) 下载安装包离线安装 Django安装与配置教程 本节主要对 Django 在各个平台上的安装方式与配置进行讲解…

Blender 插件UvSquares

目录 1. UvSquares插件1.1 解压UvSquares插件1.2 blender偏好设置1.3 打开插件1.4 安装插件1.5 勾选插件UvSquares1.6 安装UvSquares插件前1.7 安装UvSquares插件后 1. UvSquares插件 Blender 的 UV 编辑器工具,可将 UV 选择重塑为网格。 下载:https:/…

关于jsonp的理解。利用 百度“联想搜索”接口

什么是 回调函数? 在 JavaScript 中,回调函数是指将一个函数作为参数传递给另一个函数,以在某些操作完成后通知调用者。当操作完成时,被调用的函数(即回调函数)将被调用,以执行某些指定的操作或…

Ajax的简单使用

目录 1、ajax概述 2、模拟ajax 3、Jquery实现ajax (1)通用开发步骤 (2)示例 注册用户名重复性验证 (3)示例 ajax解析json数据 (4)实现细节 4、axios实现ajax 5、ajax发送PUT…

西门子安装和配置

一、已安装 V16,检查软件正常 1.判断西门子软件是否正常工作,检查软件图标,如下图。 2.如果软件图标不存在,检查Windows服务是否存在,打开方法如下图: 3.检查西门子的服务,共16个服务&#xff…

万维网服务

~ 在AppSrv上搭建网站服务器 ~ 将访问HTTP://www.chinaskills.com的http的请求重定向到https://chinaskills.com站点 ~ 网站内容设置为“该页面为www.chinaskills.com测试页” ~ 将当前web根目录设置为d:\wwwroot 目录 ~ 启用windows身份验证,只有通过身份验证的…

如何在比特币系统内创造人工生命

信息来源:coingeek.com 自2015年以来,关于比特币能否进行复杂计算以及比特币是否“图灵完备”的争论一直在持续。不幸的是,现在存在着一种流传甚广的谬论,有人说比特币并非图灵完备的,它不能像以太坊区块链那样进行复杂…

【Node.JS 数据库篇】Sequelize 的用法与mysql的关系

文章目录 一、Sequlize是Node.JS中ORM实现二、Sequelize 执行基础的CRUD三、Sequelize 执行复杂的CRUD1. 指定字段attributes2. 触发数据库事务3. LEFT JOIN 联表关系4. INNER JOIN 联表关系5. 嵌套查询 四、Sequlize常用方法和参数1. findAll2. count3. findByPk4. findOne5. …

【策略设计模式详解】C/Java/JS/Go/Python/TS不同语言实现

简介 策略模式(Strategy Pattern)属于行为型设计模式。将每一个算法封装到具有共同接口的独立类中,根据需要来绑定策略,使得具体实现和策略解耦。 当你想使用对象中各种不同的算法变体,使用if...else 所带来的复杂和…

增强型PID-自适应-前馈-神经网络控制研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

【Linux】入门介绍

🌱博客主页:大寄一场. 🌱系列专栏:Linux 😘博客制作不易欢迎各位👍点赞⭐收藏➕关注​ 目录 前言 Linux背景介绍 1.发展史 UNIX发展的历史 Linux发展历史 2. 开源 3. 官网 4. 企业应用现状 5. 发行版…

装饰者模式

采用组合而非继承的手法,Decorator模式实现了在运行时动态扩展对象功能的能力,可以根据需要扩展功能。 Decorator类在接口上表现为is-a Component的继承关系,即Decorator类继承了Component类的所有接口。但在实现上又表现为has-a Component的…