IDEA常用配置及使用技巧

news2024/12/24 3:20:40

文章目录

    • 下载
    • 插件
      • JRebel and XRebel
      • Chinese Language Pack
      • Mybatis X
      • EasyCode
      • Translation
      • Auto filling Java call arguments
      • Codota AI Autocomplete for Java and JavaScript
      • Alibaba Java Coding Guidelines
      • EasyYapi
      • GenerateAllSetter
      • Git Commit Template
      • GitToolBox
      • SQL Params Setter
      • Key Promoter X
      • Maven Helper
      • Rainbow Brackets
      • GsonFormatPlus
    • 配置及技巧
      • 自定义模板
      • Idea快捷键及设置
      • 快速发起请求
      • 快速开发

下载

工欲善其事必先利其器,一个好的开发工具,能极大提高开发效率.

  • 新UI很漂亮。IDEA 2022.2.3 官方下载地址: https://www.jetbrains.com/zh-cn/idea/download/other.html
  • 激活工具 百度云下载. 链接:https://pan.baidu.com/s/19sCUTCBXvwXgEQc8vX-SYQ?pwd=gwup 提取码:gwup

请添加图片描述

插件

一些实用的插件,能提高开发速度

JRebel and XRebel

代码调试热部署插件,使用需要花钱; 破解教程供参考.

启动完成需要改动代码调试,编译(快捷键: ctrl+b)一下即完成热部署,非常方便.

请添加图片描述

Chinese Language Pack

中文语言包,对英文不太好的人很友好,根据使用习惯自行添加.

请添加图片描述

Mybatis X

现在几乎用mybatis-plus / mybatis-plus-join 取代了mybatis,所以该插件根据需要安装吧

功能:

  1. XML和Mapper跳转
  2. Mapper和XML代码生成
  3. Mapper单表条件查询生成XML类似JPA

请添加图片描述

EasyCode

该插件可替代mybatis-generator生成代码,且支持支持导入导出模板,由于集成到IDEA中使用更加方便,配置好模板(Velocity模板引擎)即可生成. 使用文档: https://gitee.com/makejava/EasyCode/wikis/pages

请添加图片描述

请添加图片描述

Translation

一款比较好用的翻译插件,可以使用快捷键 Ctrl+Shift+X 替换单词,从此妈妈再也不用担心变量方法命名的问题了.

请添加图片描述

Auto filling Java call arguments

自动填充调用参数,一些方法的参数非常多,可以用这个插件提高效率,根据需要下载

请添加图片描述

Codota AI Autocomplete for Java and JavaScript

该插件适用于 Java 和 JavaScript 的 AI 更好地完成代码,与之相关的国产有一个AiXcoder Code Completer 都挺不错的.

请添加图片描述

Alibaba Java Coding Guidelines

可以使你写的代码不至于太烂

对于Java代码规范,业界有统一的标准,不少公司对此都有一定的要求。但是即便如此,庞大的Java使用者由于经验很水平的限制,未必有规范编码的意识,而且即便经验丰富的老Java程序员也无法做到时刻将规范牢记于心。所以对于代码规范扫描工具,一经问世就广受青睐,阿里巴巴出品的Alibaba Java Coding Guidelines(阿里巴巴Java代码规约扫描,以下简称为AJCG)插件便是其中之一.

请添加图片描述

EasyYapi

公司用Yapi作为前后端项目文档,那么使用该插件可以快速导入到yapi中,操作详情查看文档: https://easyyapi.com/documents/index.html

请添加图片描述

GenerateAllSetter

一键生成一个对象的所有set,get方法,可赋默认值,支持链式调用

请添加图片描述

Git Commit Template

该插件最主要作用就算规范git提交信息,方便统一管理生成release note,当然也可以在项目根目录建立模板文件(git config commit.template)这种方式来进行规范,请根据具体使用场景来

请添加图片描述

GitToolBox

GitToolBox是的git增强工具,能够帮你开始查看当前代码的提交记录。比如什么时间、谁提交的。对于快速查看代码提交记录是一款不错的工具

可以当前编辑行的后面显示git记录,不想看可以取消,当然如果你觉得碍眼,可以不下载.请根据使用习惯来进行下载

请添加图片描述

SQL Params Setter

鼠标选中日志中打印的mybatis日志,右键选择 Sql Params Setter 自动将参数拼接到sql语句里,并复制到剪切板上.

请添加图片描述

Key Promoter X

当你在IDEA里面使用鼠标的时候,如果这个鼠标操作是能够用快捷键替代的,那么Key Promoter X会弹出一个提示框,告知你这个鼠标操作可以用什么快捷键替代。对于想完全使用快捷键在IDEA的,这个插件就很有用。

请添加图片描述

Maven Helper

Maven是个很好用的依赖管理工具,但是再好的东西也不是完美的。Maven的依赖机制会导致Jar包的冲突。举个例子,现在你的项目中,使用了两个Jar包,分别是A和B。现在A需要依赖另一个Jar包C,B也需要依赖C。但是A依赖的C的版本是1.0,B依赖的C的版本是2.0。这时候,Maven会将这1.0的C和2.0的C都下载到你的项目中,这样你的项目中就存在了不同版本的C,这时Maven会依据依赖路径最短优先原则,来决定使用哪个版本的Jar包,而另一个无用的Jar包则未被使用,这就是所谓的依赖冲突。

在大多数时候,依赖冲突可能并不会对系统造成什么异常,因为Maven始终选择了一个Jar包来使用。但是,不排除在某些特定条件下,会出现类似找不到类的异常,所以,只要存在依赖冲突,在我看来,最好还是解决掉,不要给系统留下隐患。

解决依赖冲突的方法,就是使用Maven提供的标签,标签需要放在标签内部。

Maven Helper插件可以帮助我们分析依赖关系,从而解决依赖冲突。

请添加图片描述

Rainbow Brackets

不同括号不同颜色,能增加代码可读性

请添加图片描述

GsonFormatPlus

能将json转java对象,按住alt + s然后进行配置转换

请添加图片描述

配置及技巧

自定义模板

配置一些常用代码字母缩写,在输入简写时可以出现你预定义的固定模式的代码,使得开发效率大大提高,同时也可以增加个性化。例如: 输入 sout 会出现 System.out.println();

请添加图片描述

Idea快捷键及设置

本人Idea设置(windows版)供参考 下载

IDEA windows 版本常用快捷键如下:

快捷键介绍
Ctrl+Shift+V粘贴板列表
Ctrl+G转到行&列
Ctrl+F在当前文件进行文本查找
Ctrl+Y删除光标所在行或删除选中的行
Shift+Shift随处搜索,常用查找接口
Ctrl+Shift+F按照文本的内容查找,行内搜索
Ctrl+D复制当前行
Alt+Enter代码提示补全
Ctrl+Tab切换文件
Alt+Insert代码自动生成
Ctrl+Shift+L格式化代码
Ctrl+Shift+R全局重命名
Alt+鼠标左键选中修改多行
Ctrl+鼠标左键点击快速找到成员变量的出处
Ctrl+B编译(配合热部署插件使用)
Ctrl+Shift+F10运行快捷键

除此之外,根据自己的使用习惯,可以用[Key Promoter X](#Key Promoter X)插件来配置你自己的快捷键.

在这个地方可以自己设置快捷键,如果你之前用的是eclipse,那么可以使用eclipse映射的快捷键,大大降低了学习成本

请添加图片描述

快速发起请求

一般写完接口,我们会使用Postman等其他测试接口工具来发起请求,看符不符合自己的预期. 这里不是在介绍Postman,而是介绍IDEA中的一个插件,它也能做到Postman的功能,而且由于集成到了idea中使开发效率大大增加.

HTTP Client 是 IDEA 自带的一款简洁轻量级的接口调用插件,通过它,我们能在 IDEA 上开发、调试、测试Restful Web服务.有了它 Postman 可以扔掉了

请添加图片描述
请添加图片描述
请添加图片描述

快速开发

配置maven项目骨架(模板),可以快速开发,可自定义项目模板,参考教程,maven骨架下载地址

Maven骨架简单的来说就是一种模型 (结构),Maven根据我们的不同的项目和需求,提供了不同的模型,这样就不需要我们自己建模型了。举个简单的例子:就比如我们要做一套普通的楼房,我们使用Maven就不需要我们自己打地基,直接把使用Maven打好的地基就可以了。同时种类的楼房(写字楼,商场,套房,别墅) 就有不同的地基,因此,Maven就有很多种模型。

配置maven骨架
请添加图片描述

设置自动导入包,清除无用的包,使代码更加整洁

请添加图片描述

在开发一些功能时需要的某些类库 https://www.21doc.net/ 这个网站做了一个导航供参考

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

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

相关文章

基于YOLOv5的儿童睡眠检测

注意: 由于SOPHGO SE5微服务器的CPU是基于ARM架构,部分步骤将在 基于x86架构CPU的开发环境中完成 一、初始化开发环境(基于x86架构CPU的开发环境中完成) 二、模型转换 (基于x86架构CPU的开发环境中完成) 三、YOLOv5模型部署测试(在SOPHGO SE5…

FT2000+ qemu kvm 64C64G 通过频繁设置CPU online 状态导致虚拟机openEuler 操作系统假死测试用例2

前文: https://hknaruto.blog.csdn.net/article/details/130408240 测试程序 /** tcti.cpp参考: https://www.cnblogs.com/organic/p/17321523.htmlg -stdc11 -lpthread trigger_cgroup_timer_inactive.cpp -o inactive_timer ./inactive_timer 100000…

linux内核网络子系统初探---概述

linux内核网络子系统初探—概述 一、网络模型 简单介绍 学习网络时,必定能在各种教材资料里见到以下三种网络模型: 三种模型间的差异: OSI七层模型是理论上的网络模型,从功能方面分成了相对独立的7个层次,由于太复…

如何通过 Rancher 轻松实现多云部署

“多云”通过不同的云厂商分发应用程序提高了弹性,能够帮助企业强化自身的竞争力。此外,多云还降低了被云厂商锁定的可能性,让企业避免过于依赖某个云厂商。 虽然多云的优势很多,但是管理多云 Kubernetes 的困难还是让人望而却步…

MCU自动化测量单元—峟思工程仪器仪表的智能助力

随着科技的不断发展,峟思工程仪器仪表在工程测量领域不断创新,其中MCU自动化测量单元作为一项颇具潜力的技术,正逐渐引起行业的广泛关注。MCU自动化测量单元作为峟思工程仪器仪表的重要组成部分,其应用带来了许多正面影响&#xf…

用右雅克比对旋转矩阵进行求导

考虑一个向量 a \bold{a} a对其进行旋转, 旋转用旋转矩阵 R \bold{R} R表示, 用朴素的倒数定义进行求导而不是用扰动模型, 我得到了这个过程与结果 和高博的新书结果 − R J r a ∧ -\bold{R}\bold{J}_{r}\bold{a}^{\wedge} −RJr​a∧结果不一样, 雅克比矩阵位置不同, 是不是…

神经网络结构搜索NAS

推荐课程:神经网络结构搜索 感谢博主ShusenWang提供的课程讲解! 目录 1. 为什么要学习神经网络结构搜索NAS? 2. 什么是神经网络结构搜索NAS? (1)随机搜素Random Search 1. 为什么要学习神经网络结构搜…

位图的简单实现和使用

文章目录 1. 什么是位图2. 位图的简单实现3. 测试位图代码 1. 什么是位图 位图, 是一种非常常见的结构, 它使用每个二进制位来存放一个值的状态, 就类似于 Java 当中 HashSet 存储元素的功能. 在 Java 当中, 可以使用HashSet完成如下操作: add(T v): 添加一个元素到 HashSet…

算法:递归启蒙-汉诺塔

基本所有的讲递归的书和视频都会以汉诺塔作为开始,因为它足够经典 汉诺塔问题要求整个挪动的过程中都符合小压大的原则,就是如果同一个柱子上有超过1个的话,那必须下面是最大的,上面依次变小,不能出现大盘压小盘的情况…

Element Plus的Pagination 组件用法

5.2 Pagination 组件 分页组件通常与表格组件一同使用,在数据量很大的时候,通常不会在表格中一次性显示所有的数据,因为如果所有数据都展示在一个页面,数据量庞大,容易造成浏览器崩溃,就算数据可以完全展…

【CV2NLP】Chinese-Vicuna 中文小羊驼

学习一个短语! gain proficiency in 熟练掌握 (用我最爱的文心一言造个句子) 最近羊驼家族百花齐放,赶紧学习一下 ChatBot 的背后细节。Chinese-Vicuna 中文小羊驼是基于 Vicuna 模型使用中文数据 LORA 方案来微调的一种中文对…

数值分析-牛顿-柯特斯公式的概念、推导与应用

目录 一、引言 二、牛顿-柯特斯公式的基本概念 三、牛顿-柯特斯公式的推导 四、牛顿-柯特斯公式的应用 五、牛顿-柯特斯公式的优缺点 六、总结 一、引言 数值分析是数学中的一个重要分支,它研究如何利用数值方法来解决实际问题。在数值分析中,牛顿…

Redux 学习系列(一) —— 基础概念入门篇

简介 Redux 是一个可预测的 JavaScript 应用状态管理容器,也可以说是一个应用数据流框架。 作用 Redux 主要是用作应用状态的管理。它抽离所有组件的状态,构造一个中心化的单独常量状态树(对象)来保存这一整个应用的状态。这棵…

Java经典笔试题—day02

Java经典笔试题—day02 🔎选择题🔎编程题🥝排序子序列🥝倒置字符串 🔎结尾 🔎选择题 (1)A 派生出子类 B , B 派生出子类 C ,并且在 java 源代码有如下声明: A a0new A(…

HTTPS协议介绍

文章目录 一、HTTPS协议的认识二、常见的加密方式1.对称加密2.非对称加密 三、数据摘要四、HTTPS的工作过程探究1.只使用对称加密2.只使用非对称加密3.双方都使用非对称加密4.非对称加密对称加密5.中间人攻击6.引入证书7.非对称加密对称加密证书认证 一、HTTPS协议的认识 HTTP…

【数据库】面试高频问题汇总及详细解答

【C语言部分】面试高频问题汇总及详细解答 【操作系统(Linux)】面试高频问题汇总及详细解答 【计算机网络】面试高频问题汇总及详细解答 本文目录 1. SQL1.1 介绍一下数据库分页1.2 介绍一下SQL中的聚合函数1.3 表跟表是怎么关联的1.4 说一说你对外连接的了解1.5 说说SQL中怎么…

VM虚拟机安装Ubuntu server 22.04网络问题

在使用vm虚拟机安装ubuntu server 22.04的时候会遇到一些网络问题,例如虚拟机内的Ubuntu不能上网,ping www.baidu.com不通,主机使用远程工具不能建立远程连接,Ubuntu ping本地主机不通,本地主机ping虚拟机也不通的问题…

vue3+vite项目优化。

最近开发的一个vue3vitets项目,build后发现体积过大,所以针对于项目体积进行一次优化。 一: 使用rollup-plugin-visualizer 可视化分析包 npm i rollup-plugin-visualizer -S 在vite.config.js中引入 在 plugins里面 然后执行npm run build就自动打开…

最新开源Chatgpt人工智能对话源码系统如何搭建?含详细安装教程分享和源码

人工智能对话系统市场需求正在不断增长。随着人们对智能化、自动化服务的需求不断提高,人工智能对话系统成为越来越多企业和组织的首选解决方案,可以有效提升用户体验、降低成本、提高效率。 一、Chatgpt人工智能对话源码系统定义 ChatGPT是一种基于深…

流量挂机赚钱项目Traffmonetizer

利用闲置电脑/服务器/安卓手机/树莓派来赚点电费 简介 Traffmonetizer是一个来自欧洲的流量挂机平台,类似Peer2profit,满10刀可提现(Paypal、BTC、Payoneer),注册好像就送5刀,Traffmonetizer不怎么占用CPU和内存以及流量&#x…