硬核资源!阿里内部强推IntelliJ IDEA 中的常用配置,还不赶紧收藏
liebian365 2024-10-16 13:05 27 浏览 0 评论
上一篇分享的是《从零开始构建 springboot 项目》,这篇给大家分享《IntelliJ IDEA 中的常用配置》。
一、概述
毋庸置疑 IntelliJ IDEA 已经成为 Java 开发最好用的开发工具,这篇文章主要记录自己使用 idea 开发过程中的一些常用配置,主要是根据自己的开发习惯进行的配置,记录这篇文章的目的是为了便于自己查询配置,并且希望对看这篇文章的小伙伴提供一些参考。
说明:我这里使用的 idea版本是 IntelliJ IDEA 2021.1.1 (Ultimate Edition),不同的版本配置稍有不同,可以根据自己使用的具体版本进行更改。
二、idea 常用配置
这里就不介绍 idea 的下载或者激活的方法了,百度一下你就知道。这里对 idea 的设置原则是尽量保持默认设置,除了自己需要的设置,其他设置一律保持默认,个人觉得 idea 只是一个开发工具,怎么用的顺手怎么设置,但是要以提高自己的开发效率为目的。
1、设置 idea 的主题颜色
点击 File --> Settings --> Appearance --> Theme
个人喜欢白色的主题颜色,可以根据自己的喜好选择对应的颜色,如下图所示:
2、设置字体大小和字符编码
- 设置字体大小
点击 File --> Settings --> Editor --> Font
字体大小根据个人电脑的屏幕进行设置,我这里设置的大小是:18。 - 设置文件编码
点击 File --> Settings --> Editor --> File Encodings
从上图可以看到配置编码的地方有4个:
1、Global Encoding:UTF-8
2、Project Encoding: UTF-8
3、File/Directory Encoding: UTF-8
4、Properties files Encoding:UTF-8
前三个是配置项目中文件的编码,不包括 properties 配置文件,这三个选项存在优先级,高优先级的覆盖低优先级的,也就是说如果文件有指定编码就使用指定的编码,如果没有指定,则使用父目录或者项目的编码。
可以看到File/Directory Encoding中配置了整个项目的根目录为UTF-8。
一般这三个配置我们一般都不用管,idea会自动配置File/Directory Encoding: UTF-8。
另外就是 properties 文件的单独配置,默认情况下跟随系统。
Transparent native-to-ascii conversion 这个选项是否勾选,官方文档说明如下图:
idea 官方文档说明地址:https://www.jetbrains.com/hel...
Transparent native-to-ascii conversion 直接翻译过来就是透明的将本地编码转换成 ascii 编码,从官方文档的说明好像没有看懂,查阅一些资料解释说明如下:
idea项目的 properties 文件编码默认跟随系统,windows 下为 gbk,但是 java 程序读取 properties 时以 UTF-8 格式读取,编码不兼容呈现出乱码,所以将 properties 文件改为 UTF-8 编码即可解决问题。 另一种解决方案是使用 native-to-ascii 功能,将输入的字符转换为 unico 码表中的码位,或者说 unico 值,例如 \u0041 表示英文字母 a。这些 unico 值均为 ascii 码表中的字符,因为 ascii 部分的字符编码在 gbk 和 unico 中是兼容的,所以即使 properties 文件是 gbk 编码的,java 程序也能正确地读取出这些 unico 值,并找到对应字符。 最简单的理解方式: 汉字字符转换成 unico 码位存储到 gbk 编码的文件中, java 再通过这些码位找到对应的汉字字符,从而解决编码兼容问题。
一般情况下我们需要同时设置文件编码为UTF-8并勾选复选框,或者设置文件编码为ISO-8859-1也是可以的。
3、设置自定义注释模板
定义类注释模板
点击 File --> Settings --> Editor --> File and Code Templates
选择 Class 查看如下图所示:
下图中的 File Header 就是对应上图中的 #parse("File Header.java"),默认情况下没有内容,下图是自定义的模板内容:
自定义模板内容如下:
/**
* ${describe}
*
* @name ${NAME}
* @author ${USER}
* @date ${YEAR}-${MONTH}-${DAY} ${TIME}
*/
上面的模板保存之后,创建一个新的 Java 文件,就会在文件头部显示注释信息,如下图所示:
这里的 @name 和 @date 被 idea 标注为黄色,显示警告信息为 Wrong tag ,也就是说 idea 不能识别这个标签,对于有强迫症的开发者来说,不能容忍这种提示标记,如何消除这个标记呢?可以根据提示点击 Add date to custom tags,之后这个黄色的标记就没有了,idea 将这个自定义的标签添加到了 Java doc 的自定义标签中,我们有自定义的标签也可以添加到这里,用逗号分隔,如下图所示:
定义方法注释模板
点击 File --> Settings --> Editor --> Live Templates
idea 默认提供了非常多的快捷方式,比如在程序中输入 sout ,实际上会输出 System.out.println(),使用这些快捷方式能够极大地提高我们的开发效率,具体使用可以查看快捷方式的具体实现,如下图所示:
接下来介绍自定义方法的注释模板
模板内容 Template text 如下所示:
**
*
* @author $user$
* @date $date$ $time$
$params$
* @return $return$
*/
方法注释模板的可应用范围选择 Java 如下图所示:
模板中的变量定义如下图所示:
其中 params 变量的 groovy 脚本的内容如下所示:
groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(i == 0) result += '* @param ' + params[i] + ' ' + ((i < params.size() - 1) ? '\\n' : '');else result += ' * @param ' + params[i] + ' ' + ((i < params.size() - 1) ? '\\n' : '')}; return result", methodParameters())
按照上面的步骤配置完成之后,就可以在方法上面输入 add 关键字,就会出现提示,效果如下图:
生成的方法注释效果如下图:
4、idea 安装常用插件
idea 常用插件说明:
- GenerateAllSetter: 一键生成 getter/setter (选择创建的对象 -> alt + enter -> Generate all setter with no default value)。
- GenerateSerialVersionUID: 一键生成序列化 ID
- JRebel: 热部署
- Lombok: 提供非常丰富的注解,简化 getter/setter。
- POJO to JSON: 一键复制实体类为 Json 格式(对实体类右键 -> POJO to Json )。
- Easy code : 基于IntelliJ IDEA开发的代码生成插件,支持自定义任意模板(Java,html,js,xml),只要是与数据库相关的代码都可以通过自定义模板来生成。支持数据库类型与java类型映射关系配置,支持同时生成生成多张表的代码,每张表有独立的配置信息,完全的个性化定义,规则由你设置。
- Kubernetes:k8s 的插件,在编写 yaml 文件时有检查和提示,非常方便。
- 以上就是《IntelliJ IDEA 常用配置》的分享。
- 也欢迎大家交流探讨,该文章若有不正确的地方,希望大家多多包涵。
- 创作不易,你们的支持就是我最大的动力,如果对大家有帮忙给个赞哦~~~
相关推荐
- “版本末期”了?下周平衡补丁!国服最强5套牌!上分首选
-
明天,酒馆战棋就将迎来大更新,也聊了很多天战棋相关的内容了,趁此机会,给兄弟们穿插一篇构筑模式的卡组推荐!老规矩,我们先来看10职业胜率。目前10职业胜率排名与一周前基本类似,没有太多的变化。平衡补丁...
- VS2017 C++ 程序报错“error C2065:“M_PI”: 未声明的标识符"
-
首先,程序中头文件的选择,要选择头文件,在文件中是没有对M_PI的定义的。选择:项目——>”XXX属性"——>配置属性——>C/C++——>预处理器——>预处理器定义,...
- 东营交警实名曝光一批酒驾人员名单 88人受处罚
-
齐鲁网·闪电新闻5月24日讯酒后驾驶是对自己和他人生命安全极不负责的行为,为守护大家的平安出行路,东营交警一直将酒驾作为重点打击对象。5月23日,东营交警公布最新一批饮酒、醉酒名单。对以下驾驶人醉酒...
- Qt界面——搭配QCustomPlot(qt platform)
-
这是我第一个使用QCustomPlot控件的上位机,通过串口精确的5ms发送一次数据,再将读取的数据绘制到图表中。界面方面,尝试卡片式设计,外加QSS简单的配了个色。QCustomPlot官网:Qt...
- 大话西游2分享赢取种族坐骑手办!PK趣闻录由你书写
-
老友相聚,仗剑江湖!《大话西游2》2021全民PK季4月激燃打响,各PK玩法鏖战齐开,零门槛参与热情高涨。PK季期间,不仅各种玩法奖励丰厚,参与PK趣闻录活动,投稿自己在PK季遇到的趣事,还有机会带走...
- 测试谷歌VS Code AI 编程插件 Gemini Code Assist
-
用ClaudeSonnet3.7的天气测试编码,让谷歌VSCodeAI编程插件GeminiCodeAssist自动编程。生成的文件在浏览器中的效果如下:(附源代码)VSCode...
- 顾爷想知道第4.5期 国服便利性到底需优化啥?
-
前段时间DNF国服推出了名为“阿拉德B计划”的系列改版计划,截至目前我们已经看到了两项实装。不过关于便利性上,国服似乎还有很多路要走。自从顾爷回归DNF以来,几乎每天都在跟我抱怨关于DNF里面各种各样...
- 掌握Visual Studio项目配置【基础篇】
-
1.前言VisualStudio是Windows上最常用的C++集成开发环境之一,简称VS。VS功能十分强大,对应的,其配置系统较为复杂。不管是对于初学者还是有一定开发经验的开发者来说,捋清楚VS...
- 还嫌LED驱动设计套路深?那就来看看这篇文章吧
-
随着LED在各个领域的不同应用需求,LED驱动电路也在不断进步和发展。本文从LED的特性入手,推导出适合LED的电源驱动类型,再进一步介绍各类LED驱动设计。设计必读:LED四个关键特性特性一:非线...
- Visual Studio Community 2022(VS2022)安装图文方法
-
直接上步骤:1,首先可以下载安装一个VisualStudio安装器,叫做VisualStudioinstaller。这个安装文件很小,很快就安装完成了。2,打开VisualStudioins...
- Qt添加MSVC构建套件的方法(qt添加c++11)
-
前言有些时候,在Windows下因为某些需求需要使用MSVC编译器对程序进行编译,假设我们安装Qt的时候又只是安装了MingW构建套件,那么此时我们该如何给现有的Qt添加一个MSVC构建套件呢?本文以...
- Qt为什么站稳c++GUI的top1(qt c)
-
为什么现在QT越来越成为c++界面编程的第一选择,从事QT编程多年,在这之前做C++界面都是基于MFC。当时为什么会从MFC转到QT?主要原因是MFC开发界面想做得好看一些十分困难,引用第三方基于MF...
- qt开发IDE应该选择VS还是qt creator
-
如果一个公司选择了qt来开发自己的产品,在面临IDE的选择时会出现vs或者qtcreator,选择qt的IDE需要结合产品需求、部署平台、项目定位、程序猿本身和公司战略,因为大的软件产品需要明确IDE...
- Qt 5.14.2超详细安装教程,不会来打我
-
Qt简介Qt(官方发音[kju:t],音同cute)是一个跨平台的C++开库,主要用来开发图形用户界面(GraphicalUserInterface,GUI)程序。Qt是纯C++开...
- Cygwin配置与使用(四)——VI字体和颜色的配置
-
简介:VI的操作模式,基本上VI可以分为三种状态,分别是命令模式(commandmode)、插入模式(Insertmode)和底行模式(lastlinemode),各模式的功能区分如下:1)...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- “版本末期”了?下周平衡补丁!国服最强5套牌!上分首选
- VS2017 C++ 程序报错“error C2065:“M_PI”: 未声明的标识符"
- 东营交警实名曝光一批酒驾人员名单 88人受处罚
- Qt界面——搭配QCustomPlot(qt platform)
- 大话西游2分享赢取种族坐骑手办!PK趣闻录由你书写
- 测试谷歌VS Code AI 编程插件 Gemini Code Assist
- 顾爷想知道第4.5期 国服便利性到底需优化啥?
- 掌握Visual Studio项目配置【基础篇】
- 还嫌LED驱动设计套路深?那就来看看这篇文章吧
- Visual Studio Community 2022(VS2022)安装图文方法
- 标签列表
-
- wireshark怎么抓包 (75)
- qt sleep (64)
- cs1.6指令代码大全 (55)
- factory-method (60)
- sqlite3_bind_blob (52)
- hibernate update (63)
- c++ base64 (70)
- nc 命令 (52)
- wm_close (51)
- epollin (51)
- sqlca.sqlcode (57)
- lua ipairs (60)
- tv_usec (64)
- 命令行进入文件夹 (53)
- postgresql array (57)
- statfs函数 (57)
- .project文件 (54)
- lua require (56)
- for_each (67)
- c#工厂模式 (57)
- wxsqlite3 (66)
- dmesg -c (58)
- fopen参数 (53)
- tar -zxvf -c (55)
- 速递查询 (52)