idea 2023使用技巧(一)

news2024/9/23 3:25:00

IntelliJ IDEA在业界被公认为最好的java开发工具之一。它能给你良好的开发体验。

idea版本号为2023.2.5。

1 基础操作

1.1索引

idea首次加载项目时,都会创建索引,创建索引的时间跟项目的文件多少成正比。idea的缓存和索引主要是用来加快文件查询,但在特殊条件下,idea的索引和缓存文件会损坏。当重新打开idea时,项目可能会打不开,这时候可以通过清除缓存和索引来解决:

图 清除索引步骤

清除完索引后,关闭idea,再重新打开项目即可。

1.2 Java编译方式

图 idea Build菜单

idea编译方式一共有三种:

1)Recompile:对选定的目标(Java类文件),进行强制性编译,不管目标是否被修改过。

2)Rebuild Project:对选定的目标(Project),进行强制性编译,不管目标是否被修改过。时间会比较长。

3)Build,对选定的目标(Project或Module)进行编译,只编译修改过的文件。

图 idea 默认在运行tomcat之前会先进行Build Project + Build artifact操作

Build artifact 是将项目打包,比如讲项目打包成jar或war文件。

图 idea 编译器设置

设置heap大小,即编译堆大小。默认是700,建议使用64位的用户,在内存足够的情况下,改为1500或以上。

图中标注的Excludes菜单用来添加目录或文件进行编译排除。在项目中,如果有任何一个可编译的文件无法编译通过,idea是无法运行起来的。如果某个包目录的文件或某个类文件编译无法通过,但我们又不着急改,那么我们可以将它们加入到编译排除列表中。

1.3 文件记录分析

图 文件记录演示

即使项目没有使用版本控制功能,idea也给我们提供了本地文件历史记录。(可在idea系统设置,Advanced Settings 中设置本地历史存储时间,默认为5天。)

图 查看文件夹各个文件变化历史

2 模版

2.1 实时代码模版

实时代码模版是为了让我们更加高效的写一些固定模式的代码,以提高编码效率。

图 实时代码模版使用演示

图 创建实时代码模版

可设置变量,变量名位于$$的中间,其中$END$为系统变量,表示光标位置。可自定义变量,然后点击“Edit Variables”来设置变量的值。设置完模版后,还要设置改模版适用的文件(表示模版会在哪种文件生效),点击Changes进行编辑。

2.2 Postfix Completion

Postfix Completion 本质上也是代码模版,但是比实时代码模版更加便捷。

图 postfix演示

在idea系统设置,Editor/General/Postfix Completion 中自定义模版。

2.3 TODO

TODO就是普通的//注解 + 一个TODO标识,目的是快速找到这个注解的代码,提高开发效率。

图 实时模版上添加TODO模版。

图 todo演示

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

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

相关文章

Python入职某新员工大量使用Lambda表达式,却被老员工喷是屎山

Python中Lambda表达式是一种简洁而强大的特性,其在开发中的使用优缺点明显,需要根据具体场景权衡取舍。 Lambda表达式的优点之一是它的紧凑语法,适用于一些短小而简单的函数。这种形式使得代码更为精炼,特别在一些函数式编程场景中,Lambda表达式可以提高代码的表达力。此外…

平凯星辰 TiDB 获评 “2023 中国金融科技守正创新扬帆计划” 十佳优秀实践奖

11 月 10 日,2023 金融街论坛年会同期举办了“第五届成方金融科技论坛——金融科技守正创新论坛”,北京金融产业联盟发布了“扬帆计划——分布式数据库金融应用研究与实践优秀成果”, 平凯星辰提报的实践报告——“国产 HTAP 数据库在金融规模…

CMake构建一个转换为3d tile的开源代码成功

之前CMake构建一个转换为3d tile的开源代码,生成解决方案之后,从VS2019打开; 总是报一个错误,跟 mocs_compilation_Debug.cpp 这个QT相关文件有关,它生成的obj,总是报模块计算机x64和目标计算机x86冲突&am…

ELK+Filebeat

Filebeat概述 1.Filebeat简介 Filebeat是一款轻量级的日志收集工具,可以在非JAVA环境下运行。 因此,Filebeat常被用在非JAVAf的服务器上用于替代Logstash,收集日志信息。实际上,Filebeat几乎可以起到与Logstash相同的作用&…

涵盖多种功能,龙讯旷腾Module第一期:物质结构

Module是什么 在PWmat的基础功能上,我们针对用户的使用需求开发了一些顶层模块(Module)。这些Module中的一部分是与已有的优秀工具的接口,一部分是以PWmat的计算结果为基础得到实际需要的物理量,一部分则是为特定的计…

小白备战蓝桥杯:Java基础语法

一、注释 IDEA注释快捷键:Ctrl / 单行注释: //注释信息 多行注释: /* 注释信息 */ 二、字面量 常用数据:整数、小数、字符串(双引号)、字符(单引号)、布尔值(tr…

elk:filebeat也是一个日志收集工具

filebeat是一个轻量级的日志收集工具,所使用的系统资源比logstash部署和启动使用的资源要小的多 filebeat可以允许在非java环境,他可以代替logstash在非java环境上收集日志 filebeat无法实现数据的过滤,一般是结合logstash的数据过滤功能一…

让@RefreshScope注解来帮助我们实现动态刷新

文章目录 前言举例作用参考文章总结 前言 在实际开发当中我们常常会看到有些类上会加一个注解:RefreshScope,有没有对应的小伙伴去思考过这个东西,这个注解有什么作用?为什么要加?下面我们就来看看这个 RefreshScope …

【离散数学】——期末刷题题库(命题逻辑)

🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL&#xff1a…

Kubernetes基础(九)-标签管理

1 概述 Label(标签)是Kubernetes系统中一个比较重要的概念,给某个资源对象(Node、Pod、Service等)定义一个Label,就相当于给它打了一个标签,然后可以通过Label Selector(标签选择器…

C陷阱与缺陷——第2章语法陷阱

1. 理解函数声明 硬件将调用首地址为0位置的子例程 (*(void(*)())0)(); 任何C变量的声明都由两部分组成:类型以及一组类似表达式的声明符,声明符从表面看与表达式有些类似,对它求值应该返回一个声明中给定类型的结果。 假定变量fp是一个函…

Blazor Table 实现获取当前选中行的功能

这里需要使用到OnClickRowCallBack事件 后台使用案例

同质化严重,创新突破难,德佑湿厕纸道阻且长

撰稿|行星 来源|贝多财经 随着大众卫生健康意识的日益加深,作为日常生活必需品的纸类产品也逐步向着精细化、多元化的趋势发展,厨房用纸、婴儿用纸等面向各类特定场景和人群的新品类如雨后春笋般涌出,为市场带来了更多的可能性。 在传统卫…

自动化支付宝小程序UI测试,AirtestProject和pytest助你一臂之力!

一,前言 1,背景 因公司业务需要做支付宝小程序的UI自动化测试,于是在网上查找小程序的自动化资料,发现微信小程序是有自己的测试框架的,但几乎找不到支付宝小程序UI自动化测试相关的资料。白piao失败,那就…

如何通过低代码工具,提升运输行业的运营效率和服务质量

《中国数字货运发展报告》显示,2022年我国公路货运市场规模在5万亿元左右。其中,数字货运整体市场规模约为7000亿元,市场渗透率约为15%。而以小微企业为主的货运行业,却以小、散、乱的行业特征,承载着5万亿元左右的市场…

【视觉SLAM十四讲学习笔记】第三讲——四元数

专栏系列文章如下: 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 【视觉SLAM十四讲学习笔记】第三讲——Eigen库 【视觉SLAM十四讲学习笔记】第三讲——旋转向量和欧…

【前端首屏加载速度优化(一) :nginx 开启gzip压缩】

开启gzip压缩前后对比: nginx.conf具体配置: server {# 启动后的端口listen 8882;# 开启gzip压缩gzip on;gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.1; gzip_comp_level 6; gzip_types text/plain application/x-javascript…

前端 | iframe框架标签应用

文章目录 📚嵌入方式📚图表加载显示📚100%嵌入及滑动条问题📚加载动画保留 前情提要: 计划用iframe把画好的home1.html(echarts各种图表组成的html数据大屏)嵌入整合到index.html(搭…

为第一个原生Spring5应用程序添加上Log4J日志框架!

😉😉 学习交流群: ✅✅1:这是孙哥suns给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群:583783…