前言

工欲善其事
必先利其器

最近受部门的邀请,给入职新人统一培训IDEA,发现有很多新人虽然日常开发使用的是IDEA,但是还是很多好用的技巧没有用到,只是用到一些基本的功能,蛮浪费IDEA这个优秀的IDE。

同时,在这次分享之后,本人自己也学习到了一些新的使用技巧,所以借着这次机会,一起分享出来。希望可以帮到一些人。

基于的 IDEA 版本信息:IntelliJ IDEA 2018.2.2 (Ultimate Edition)

知识点概览:

  • 高效率配置
  • 日常使用 必备快捷键(★★)
    • 查找
    • 跳转切换
    • 编码相关
    • 代码阅读相关
    • 版本管理相关
  • 编码效率相关(★★)
    • 文件代码模板
    • 实时代码模板
    • 其他
  • 代码调试 源码阅读相关(★★★)
    • 视图模式
    • 代码调试
    • ...
  • 插件方面
    • 插件的安装与使用
    • 插件推荐
  • 参考

高效率配置

1. 代码提示不区分大小写

Settings -> Editor -> General -> Code Completion

(低版本 将 Case sensitive completion 设置为 None 就可以了)

2. 自动导包功能及相关优化功能

Settings -> Editor -> General -> Auto Import

3. CTRL + 滑动滚轮 调整窗口显示大小

Settings -> Editor -> General -> Change font size (Zoom) with Ctrl+Mouse wheel

选择之后,就可以通过CTRL+滑动滚轮的方式,调整编辑器窗口的字体大小

4. tab 多行显示

这点因人而异,有些人喜欢直接取消所有tab,改用快捷键的方式,我屏幕比较大,所以喜欢把tab全部显示出来。

Window -> Editor Tabs -> Tabs Placement,取消勾选 Show Tabs In Single Row选项。

效果如下:

5. 代码编辑区显示行号

Settings -> Editor -> General -> Appearance 勾选 Show Line Numbers


日常使用 必备快捷键(★★)

查找

跳转切换

编码相关

代码阅读相关

版本管理相关

更多快捷键请参考此文章

https://github.com/judasn/IntelliJ-IDEA-Tutorial/blob/master/keymap-introduce.md

mac os 快捷键请参考本文章

https://github.com/judasn/IntelliJ-IDEA-Tutorial/blob/master/keymap-win-mac.md


编码效率相关(★★)

文件代码模板

Settings -> Editor -> File and Code Template

在这里可以看到IDEA所有内置的文件代码模板,当你选择某个文件生成时,就会按照这里面的模板生成指定的代码文件。

另外,你可以在这里设置文件头。

设置之后,效果如下

实时代码模板

IDEA提供了强大的实时代码模板功能,并且原生内置了很多的模板,比如,当你输入sout或者psvm,就会快速自动生成System.out.println();public static void main(String[] args) {}的代码块。

这些的模板可以在Settings -> Editor -> Live Templates看到。使用者可以按照自己的使用习惯来熟悉相关的代码模板。

定制代码模板

IDEA也提供自己定制实时代码模板的功能。

  • 创建自己的模板库
  • 创建定制的代码模板

图中的MyGroup就存放着我自己定义的代码模板。

其他

CRTL+ALT+T

Ctrl + Alt + T 提供的是代码块包裹功能 - Surround With。可以快速将选中的代码块,包裹到选择的语句块中。

本地历史版本

IDEA 自带本地版本管理的功能,能够让你本地编写代码变得更加的安心和方便。


代码调试 源码阅读相关(★★★)

视图模式

IDEA提供两种特殊的视图模式,

  • Presentation Mode - 演示模式,专门用于Code Review这种需要展示代码的场景
  • Distraction Free Mode - 禅模式,专注于代码开发

代码调试

1. 条件断点

IDEA 可以设置指定条件的断点,增加我们调试的效率。

2. 强制返回

IDEA 可以在打断点的方法栈处,强制返回你想要的方法返回值给调用方。非常灵活!

3. 模拟异常

IDEA 可以在打断点的方法栈处,强制抛出异常给调用方。这个在调试源码的时候非常有用。

4. Evaluate Expression

IDEA 还可以在调试代码的时候,动态修改当前方法栈中变量的值,方便我们的调试。


插件方面

插件安装

File -> Setting -> Plugin

插件安装,可以直接在IDEA的插件库中实时搜索安装。browse plugin repository

对于网络不好的用户,可以登录官方插件仓库地址:plugins.jetbrains.com/idea,下载压缩包之后,选择install from disk

插件推荐

本人日常开发中使用的插件

Alibaba Java Coding Guidelines

阿里Java编程规约插件

FindBugs

代码缺陷扫描

PMD

代码缺陷扫描

InnerBuilder

builder模式快速生成

lombok plugin

lombok 插件

maven helper

maven 依赖管理助手 ,解析maven pom结构,分析冲突;

Rainbow brackets

让代码中的括号更具标识性

String Manipulation

String相关辅助简化,搭配 CTRL+W 、ALT+J等文本选择快捷键使用

Translation

翻译插件,阅读源码必备

GenerateAllSetter

Key Promoter X

对你的鼠标操作进行 快捷键提示

GenerateSerialVersionUID

Alt + Insert 快速生成SerialVersionUID

GsonFormat

RestfulToolkit

  • 快速跳转到Restful Api处( use: Ctrl(Command) + or Ctrl + Alt + N )
  • 展示Resultful 接口结构
  • http 简单请求工具

Material Theme UI

本人自用的主题就是这个。

MyBatis Log Plugin

把 Mybatis 输出的sql日志还原成完整的sql语句,看起来更直观。

Free Mybatis

MyBatis 免费的插件


参考

https://github.com/judasn/IntelliJ-IDEA-Tutorial

(By the way, 更多IDEA使用请参考此延伸文档以及官方文档)

1. SpringBoot内容聚合

2. 面试题内容聚合

3. 设计模式内容聚合

4. Mybatis内容聚合

5. 多线程内容聚合

最后,推荐一个专注于Java学习的公众号,Java知音。分享java基础、原理性知识、JavaWeb实战、spring全家桶、设计模式及面试资料、开源项目,助力开发者成长!

IntelliJ IDEA 超实用使用技巧分享相关推荐

  1. 超实用Word技巧分享!这才是使用Word时常用到的高效率方法

    使用Word这么久了,突然发现自己掌握了不少实用的技巧.这些技巧看似普通简单,但是在学习上还是工作上,都是经常使用的. 下面跟大家分享我在使用Word时,总结的一些技巧,希望对大家有帮助. 一.Wor ...

  2. idea 分栏_常用SQL优化与IDEA超实用技巧分享

    原标题:常用SQL优化与IDEA超实用技巧分享 今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,更是我们程序员需要去关注 ...

  3. 超实用的新闻稿写作格式和技巧分享,快来收藏吧

    新闻稿是公司.学校或其他单位向媒体发送的一种传播渠道,用于发布具有价值的新闻,包括消息.通讯.评论等,一篇完整的新闻稿格式包括标题.导语.主体.结尾四部分组成. 1.标题 标题对于新闻来说非常重要,新 ...

  4. idea 跳转到行数,Intellij IDEA 一些不为人知的技巧

    蚂蚁金服招聘中间件开发工程师/技术专家,欢迎大家的简历哦:khotyn.huangt@alibaba-inc.com 今天又听了 Jetbrains 首席布道师 Hadi 的分享的 Intellij ...

  5. android beam开关,三星S10e的5个超实用小技巧

    原标题:三星S10e的5个超实用小技巧 三星S10系列是首款出厂预装全新"One UI"系统的三星手机,在使用一段时间三星S10e后,我们发现这套系统提供了非常多实用功能,你发现了 ...

  6. java培训面试技巧分享

    很多人在学会java技术之后,就开始筹备自己的面试了,java技术在互联网行业的需求是很大的,所以内卷是很严重的,在面试环节一定要全力以赴才行,下面小编就教大家一些java培训面试技巧,希望能帮助到大 ...

  7. python dry原则_python使用建议与技巧分享(一)

    这是一个系列文章,主要分享python的使用建议和技巧,每次分享3点,希望你能有所收获. 1 如何创建指定长度且有特定值的list 不推荐方式 list1 = [0, 0, 0, 0, 0, 0, 0 ...

  8. python处理大量excel数据-使用python将大量数据导出到Excel中的小技巧分享

    (1) 问题描述:为了更好地展示数据,Excel格式的数据文件往往比文本文件更具有优势,但是具体到python中,该如何导出数据到Excel呢?如果碰到需要导出大量数据又该如何操作呢? 本文主要解决以 ...

  9. python输出数据到excel-使用python将大量数据导出到Excel中的小技巧分享

    (1) 问题描述:为了更好地展示数据,Excel格式的数据文件往往比文本文件更具有优势,但是具体到python中,该如何导出数据到Excel呢?如果碰到需要导出大量数据又该如何操作呢? 本文主要解决以 ...

  10. 微信公众平台前端开发技巧分享

    这个是第三方跳转的网站 微信公众平台前端开发技巧分享 微信公众平台 新版微信做了更改,此文提到的部分方法可能已经不再适用,请关注微信官方开放平台:http://open.weixin.qq.com/d ...

最新文章

  1. 解决虚拟器device support x86 but apk only supports armeabi-v7
  2. 一代偶像终将老去,总有AI正在年轻
  3. Scrapy框架基础使用
  4. 树莓派应用实例4:环境温湿度测量(改进)
  5. 整人之bat重启文件
  6. 解决类似/usr/lib64/libstdc++.so.6:version `GLIBCXX_3.4.21` not found的问题
  7. linux 输入是否为数字,【shell】Linux shell 之 判断用户输入的变量是否为数字
  8. 怎么给域账号映射服务器,如何给每个域用户映射网络驱动器?
  9. java8 lambda this_java8里lambda里的 this 为什么会指向 lamdba 所在的外部类
  10. python接口自动化(二十七)--html 测试报告——上(详解)
  11. Python3常用字符串操作
  12. EyouCms前台GetShell漏洞复现
  13. docker Got permission denied while trying to connect
  14. 资产管理运维一体化 构建设备运维标准库高效处理现场服务任务
  15. LeetCode题解(0695):岛屿的最大面积(Python)
  16. 【哈士奇赠书活动 - 23期】-〖你好 ChatGPT〗
  17. 若依ruoyi——手把手教你制作自己的管理系统【二、修改样式】
  18. 火星特约 | Uniswap的UNI对DEX格局的影响
  19. 莫队算法二(树上莫队cot2,Haruna’s Breakfast)
  20. linux登陆操作mysql

热门文章

  1. java的panel布局_学习面panel和三种布局
  2. 循序渐进ActiveMQ(6)----使用zookeeper实现activemq的主从环境搭建
  3. 李宏毅自然语言处理——指代消歧
  4. 词汇处理——词义辨析消歧(一)
  5. C语言实现图片找茬,[创意心得]大家来找茬(C语言)
  6. 电影社交网络中Facemash女生评比算法讲解
  7. 冬至幻灵怎么修改服务器名字,冬至幻灵如何给自己加元宝
  8. 洛谷P3110 [USACO14DEC]驮运Piggy Back
  9. 碰到斑马打印机下载字体问题
  10. 计算机 桌面 休眠,电脑如何设置休眠的时间?