介绍五个很实用的IDEA使用技巧

很实用,技巧,IDEA,使用 · 浏览次数 : 43

小编点评

**文章内容大纲** **1.注释对齐快速创建包目录/文件夹** - 使用快捷键 ctrl + / 添加注释代码或注释已有代码时,默认是在首行位置无法与下方 for 循环代码自动对齐。 - 解决方法:取消 Line comment at first column 的默认勾选,将 Add a space at line comment start 以及 Enforce on reformat 打上勾即可。 **2. 快速创建 Java 类** - 在创建 Java 类时,直接写出包目录名称通过 . 拼接即可。 **3. 快付复制类代码生成 Java 类** - 通过全选复制代码,打开 IDEA,鼠标选中指定的包目录后通过 ctrl + v 粘连即可。 **4. 多实例启动日常本地开发微服务项目** - 打开服务配置,点击 Modify options 选项,勾选打开 Operation System -> Alow multiple instance。 **5. 分支比较** - 右键项目根目录,找到 Git -> Compare with Branch 选项,点击打开。 - IDEA 会显示项目的所有分支列表,我们从中找到 master 分支,点击即可。

正文

日常开发中,相信广大 Java 开发者都使用过 IntelliJ IDEA 作为开发工具,IntelliJ IDEA 是一款优秀的 Java 集成开发环境,它提供了许多强大的功能和快捷键,可以帮助开发者提高编码效率和质量。除了一些常见的技巧,如自动导包、智能补全、重构工具等。IntelliJ IDEA 还有一些不为人知的技巧,可能很多开发者都没有注意到或者使用过。本文就在为你介绍博主常用的五个 IntelliJ IDEA 使用技巧,希望能够给你带来一些工作效率上的提升。本文内容大纲如下

  • 注释对齐
  • 快速创建包目录/文件夹
  • 快付复制类代码生成 Java 类
  • 多实例启动
  • 分支比较

注意:本文的示例截图以及操作演示都是基于 IntelliJ IDEA 2023.2 版本而来。过低版本可能不尽相同,大家注意。

注释对齐

日常开发中,相信大家在添加注释时都知道使用快捷键 ctrl + / ,不过大家可能会遇见下面这种情况,

    public DiamondJumpContext(List<DiamondJumpType> diamondJumpTypes) {
//添加注释
        for (DiamondJumpType diamondJumpType : diamondJumpTypes) {
//            map.put(diamondJumpType.getType(), diamondJumpType);
        }
    }

可以看到,使用快捷键 ctrl + / 添加注释代码或者注释已有代码时,默认是在首行位置,无法与下方 for 循环代码自动对齐,造成了视觉上的不美观,那如何解决这个问题嘞?其实解决方法就藏在 IDEA 里,我来告诉大家如何设置。

打开 IDEA 设置 Editor -> Code Style -> Java -> Code Generation,找到下方的 Comment code 区域, 取消 Line comment at first column 的默认勾选,将 Add a space at line comment start 以及 Enforce on reformat 打上勾就可以了。如下图所示,

 

然后我们重新给上面的示例代码打赏注释时,效果就是下面这样了,

    public DiamondJumpContext(List<DiamondJumpType> diamondJumpTypes) {
        // 添加注释
        for (DiamondJumpType diamondJumpType : diamondJumpTypes) {
            // map.put(diamondJumpType.getType(), diamondJumpType);
        }
    }

大家可以很明显的看到,此时添加的注释默认是跟当前代码对齐,并且自动留出一个空格,代码的可阅读性有了很大提升。

快速创建包目录/文件夹

创建包目录

日常开发时,当大家想新建 Java 类时,考虑到项目的包目录划分可能需要新建一个包目录,那么大家是如何操作的嘞?是先创建好包目录后,在创建 Java 类吗?其实在 IDEA 中创建 Java 类时,是可以直接顺带创建包目录的,具体操作如下。

在创建 Java 类时,直接写出包目录名称通过 . 拼接即可,如下图新建 Java 类时填上 controller.TestController ,

 

效果如下,

 

可以看到,包目录自动创建成功。

创建文件夹

快速创建文件夹的方式跟快速创建包目录差不多,只不过将 . 拼接改为 / 即可,如下图新建文件时填上 template/test.csv,

 

效果如下,

 

可以看到,文件夹自动创建成功。

快付复制类代码生成 Java 类

日常中有个场景,博主经常在上网浏览网上的技术资料,看到感兴趣的文章时,想要复制文章中的 demo 代码在本地跑一遍验证一下。于是就有了这个快付复制代码生成 Java 类的需求。起初博主老老实实通过常规操作在本地手动创建 Java 类,然后拷贝 demo 代码进行验证。后来了解到其实在 IDEA 中是有快付复制类代码生成 Java 类的功能,这里分享给大家。

假如当前我们想要快速复制下方的 Java 类代码到 IDEA 项目中,那改如何操作嘞?

/**
 * 金刚位跳转策略配置
 */
@Component
public class DiamondJumpContext {

    private final Map<Integer, DiamondJumpType> map = new HashMap<>();

    /**
     * 由spring自动注入DiamondJumpType子类
     *
     * @param diamondJumpTypes 金刚位跳转类型集合
     */
    public DiamondJumpContext(List<DiamondJumpType> diamondJumpTypes) {
        for (DiamondJumpType diamondJumpType : diamondJumpTypes) {
            map.put(diamondJumpType.getType(), diamondJumpType);
        }
    }

    public DiamondJumpType getInstance(Integer jumpType) {
        return map.get(jumpType);
    }
}

其实操作是很简单的,我们可以通过全选复制上述 Java 类代码,然后打开 IDEA,鼠标选中指定的包目录后通过 ctrl + v 粘连即可。

 

效果如下,

 

可以看到,我们已经将 Java 类代码快速复制到本地文件中。

多实例启动

日常本地开发微服务项目时,博主想要验证一下网关的负载均衡以及感知服务上下线能力时,需要用到多实例启动。

那么什么是多实例启动嘞?简单说就是能在本地同时启动多个同一服务。打个比方项目中有一个 MobileApplication 服务,我现在想要同时启动两个 MobileApplication 服务,通过不同端口区分,该如何操作嘞?IDEA 中其实是支持这个操作的。我将给大家介绍如何启用多实例功能。

打开服务配置,点击 Modify options 选项,

 

勾选打开 Operation System -> Alow multiple instance ,继续勾选打开 Java -> Program arguments,然后在 Program arguments 输入框中指定端口,在 Spring 项目中通过 --server.port=9999,如下图(注意每次启动实例时,这里的端口不能相同),

 

效果图如下,

 

可以看到,这里多实例启动的功能就 OK 了,在 Modify options 选项中还有许多常用功能,对于日常开发都是很多帮助的,比如 Java -> add VM options 可以用来添加 jvm 启动参数等。

分支比较

日常开发中,当项目上线时,博主经常会使用这个功能,用于比较当前新功能分支与 master 分支的代码差异。

假如新功能分支上线前经历了多个人员参与迭代以及冲突修复,作为项目主程的你需要在项目上线前进行代码 review,以确保代码质量,那该如何操作嘞? 其实 IDEA 已经贴心的为我们做好了一切,这里我将给大家介绍远程分支比较功能。

右键项目根目录,找到 Git -> Compare with Branch 选项,点击打开,

 

此时 IDEA 会显示项目的所有分支列表,我们从中找到 master 分支,点击即可,

 

最后 IDEA 会显示所有的文件差异在项目左侧栏目,我们点击某个文件即可查看某个具体差异。

 

效果如下,

 

可以看到,通过 IDEA 提供的分支比较功能,为我们进行代码 review,提供了非常便利的操作。

总结

其实本文所讲解的五个实用技巧不光在 IDEA 里可以使用,在 PhpStorm、PyCharm 中都是通用的,欢迎大家在浏览完本文后实践体验下。最后希望本文在日常工作中能够帮助到大家,感谢阅读。

关注公众号【waynblog】每周分享技术干货、开源项目、实战经验、国外优质文章翻译等,您的关注将是我的更新动力!

与介绍五个很实用的IDEA使用技巧相似的内容:

介绍五个很实用的IDEA使用技巧

日常开发中,相信广大 Java 开发者都使用过 IntelliJ IDEA 作为开发工具,IntelliJ IDEA 是一款优秀的 Java 集成开发环境,它提供了许多强大的功能和快捷键,可以帮助开发者提高编码效率和质量。除了一些常见的技巧,如自动导包、智能补全、重构工具等。IntelliJ IDE

[转帖]5个相见恨晚的Linux命令

https://www.sohu.com/a/295860653_487482 编者按:说到Linux命令相信大家都不陌生,就连前端现在也要经常在 terminal 敲一些 node,gulp等命令,本文详细介绍了五个相见恨晚,能极大提高工作效率的命令。 tldr(命令手册) 作为一个开发人员,经常

[转帖]5个相见恨晚的Linux命令

https://www.sohu.com/a/295860653_487482 编者按:说到Linux命令相信大家都不陌生,就连前端现在也要经常在 terminal 敲一些 node,gulp等命令,本文详细介绍了五个相见恨晚,能极大提高工作效率的命令。 tldr(命令手册) 作为一个开发人员,经常

在学习分布式系统时遇到的五个常见误解

哈喽大家好,我是咸鱼 我们知道,随着企业规模或者说业务规模的不断扩大,为了应对不断增长的业务需求和提高系统的可伸缩性、可靠性和性能,计算机系统由一开始的单体系统逐渐发展成分布式系统 那么今天咸鱼给大家介绍一些关于小白在学习分布式系统遇到的一些常见误解 ## 误解1.网络是可靠的 **在分布式系统中,

SQL Server实战五:存储过程与触发器

本文介绍基于Microsoft SQL Server软件,实现数据库存储过程与触发器的创建、执行、修改与删除等操作。 目录1 交互式创建并执行——存储过程一2 交互式创建并执行——存储过程二3 用T-SQL创建——存储过程一4 用T-SQL创建——存储过程二5 交互式修改存储过程6 用T-SQL修改

Nuxt3 的生命周期和钩子函数(五)

摘要:本文详细介绍了Nuxt3中的六个核心生命周期钩子及其用法,包括build:done、build:manifest、builder:generateApp、builder:watch、pages:extend和server:devHandler:handler。内容涵盖各钩子的调用时机、参数、环...

[转帖]iptables的四表五链与NAT工作原理

本文主要介绍了iptables的基本工作原理和四表五链等基本概念以及NAT的工作原理。 1、iptables简介 我们先来看一下netfilter官网对iptables的描述: iptables is the userspace command line program used to config

Python优雅遍历字典删除元素的方法

本文详细介绍了Python优雅遍历字典删除元素的五种方法,字典推导式是删除字典中元素的最常见且最优雅的方法,因为它清晰、简洁且易于理解。其他方法可能在某些特定情况下有用,但通常不如字典推导式通用或高效。

3、计划工具 - 编程实战工具系列文章

计划工具 上次介绍了需求工具。根据项目管理中的内容,五大过程组(启动、计划、执行、监控、收尾),以及软件工程里的内容,需求之后就是计划,所以这次介绍的是计划工具。 对于项目管理中的计划,主要是用Project来进行对需求分解,然后形成WBS内容,然后才对计划进行监控管理,这里Project的使用见以

初识Redis与桌面客户端

Redis介绍 什么是Redis Redis(Remote Dictionary Server) 是一个使用 C 语言编写的,开源的(BSD许可)高性能非关系型(NoSQL)的键值对数据库。 Redis 可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串,值支持五种数据类型:字符串、列表、