注意: 不同idea版本 菜单、目录可能有细微差别,自己稍加分析都能找到;文章会持续动态更新,建议收藏后每过几个月时间再次查看
鼠标在需要查看的java类 右键 找到Local History >> Show History 点开即可看到历史版本,常用于自己忘记代码改了哪些内容 或需要恢复至某个版本 (注意 只能看近期修改 太久了也是看不到的)
尽管本质都是去改变 .vmoptions配置文件,但推荐使用Change Memory Settings去调整,选择Edit Custom VM Options 或者在本地磁盘目录更改,通过某些方法破解的idea 很可能造成idea打不开的情况
这对eclipse转idea的开发人员来说 非常友好,这样不需要记两套快捷键
把这个勾去掉,(有的idea版本是选择选项 选择none即可),例如String 输入string 、String 都可以提示
与eclipse类似,idea也可以自己关闭代码检查 减少资源使用,但不推荐全部关闭,(是大佬当我没说),把我们项目中不会使用到的关闭就好了
文档注释快捷键及模板
方便查看方法与方法之间的间隔,在代码不规范的项目中 很好用!
idea默认是选择显示单行的,我们把这个去掉,就可以显示多行tab了,在打开tab过多时的场景非常方便!
settings - editor - General - Editor tabs - tab limit 数值设大就好了
ctrl+[ ctrl+] 可以快速跳转到方法大括号的起止位置,配合方法分隔符使用,不怕找不到方法在哪儿分割了
例如一行代码补全分号,或者是if(xxx) 补全大括号,按ctrl+shift+enter 无需切换鼠标光标,大幅度提升了编码效率
例如People类里面的test方法,按ctrl+shift+alt+n 输入Peo.te 就可以查到该方法了,如果觉得这个快捷键难记 也可以按ctrl+shift+r (查找某个文件名的快捷键 下图中的Files),再手动选择Symbols
例如我们在test类中,有句代码:People p = new People(); 我们想稍微查看一下People这个类,但是tab已经够多了,ctrl+alt+b会打开新的标签,标签多了就混乱了,尤其一堆命名类似的tab,这时候我们可以按ctrl+shift+i 实现预览功能,不占tab
ctrl+alt+h 可以清楚看到方法在哪些地方被调用;在知道这个快捷键之前,都是ctrl+h(idea默认 ctrl+shift+f)搜索,肉眼找的…
例如 : eclipse 中的syso是打印控制台输出 ,但是idea默认是sout , 如果非要改成syso 可以在Postfix Completion里面设置,类似的 fori等都是在里面设置
这个根据个人是否要使用 有的时候工具只能作参考,自己记忆才能保证准确
这是一个很有用的小技巧 按F2可以快速查看某个类或某个字段的文档注释 ;基于这点 其它IDE应该也是可以快速查看文档注释内容 不仅仅是idea特性,这也是为什么阿里编码规范里面会明确声明实体类字段需要用文档注释 而不能使用双斜杠// 注释 ,还记得刚看到这个规范的时候 很不理解 特地去百度 看到有人说就是个习惯问题 很显然不能说服人,直到发现F2可以快速查看之后 恍然大悟!
Rainbow Brackets 插件 成对的括号用相同的颜色表示出来了
步骤:
View ——》Tool Windows ——》 services ——》add services
例如我们打开新窗口时,maven配置会恢复 这时就需要对打开新窗口的设置进行修改 达到一个全局的目的
在低版本idea中 也是在File下 例如idea2018是叫other settings
Free MyBatis plugin 插件
点击绿色箭头可以直接跳转 非常方便
BackgroundImage插件
设置喜欢的图片作为背景图
如果是使用 mvn dependency:tree 命令 , 结果是下图这样 很不方便查看
我们可以在idea右上角点击这个ShowDependencies按钮 以图片形式展示出来 图片按住ctrl和鼠标滑轮 可以放大,这个在排除依赖冲突 查看jar包来源时 非常好用
当我们打开了多个tab的时候 , 想要快速回到上一个点击的tab中 有的时候肉眼很难找
我们可以用快捷键 alt + ← 键 (eclipse版快捷键 idea默认快捷键需要自测) ,有的时候我们在后面tab编辑了内容 按一次可能不够 需要在多按几次 ,相应的 alt + → 切换到下一个点击的tab
常见应用场景: debug发生类跳转时 、利用快捷键在其它类中创建方法时
(类似的idea还有自带的数据库连接工具 但是视图界面并不如Navicat 所以很多人都不选择用)
SequenceDiagram 插件
这其实是本文第13点的上位替代方案,idea自带的快捷键查看代码调用,只是已菜单形式展示,不太直观,
如果是自己写的代码或比较规范的代码,那用自带的也就无所谓,如果是比较复杂的源码或不规范的代码,
那使用 SequenceDiagram 会直观特别多。
在要查看的java文件鼠标右键,点击 Sequence Diagram
在断点调试的时候,我们可以通过点击下图红色箭头指向的相机图标,获取当前线程的dump信息。
这个功能有什么用呢?我们可以通过线程名,分析当前是哪个线程执行的,在多线程环境下对代码运行分析起到辅助作用。
比如下图1, run()方法是通过main主线程执行的,只是方法调用,并没有启动多线程(这是我们熟知结论的实践证明)
当我们把run方法改成start()方法时,可以看到是线程thread0执行的。
这是个非常实用的功能,可以模拟集群 测试负载均衡。
此外 在开发阶段也是非常好用,开发过程中,让别人直接连自己本地测试 是不是非常方便?
那自己又想打断点调试 会影响别人 怎么办呢 ?这个时候多开的作用就体现出来了!
网上很多方法提到勾选 Allow parallel run (不同版本idea 名称不一样) ,我也亲眼见过有老师是可以多开启动的,
但我本地启动发现每次都会同时同端口启动多个,不知道是版本问题还是操作问题,这里我用的是另一种有效的方法:
在 VM options 加上
# 8993是区别于 application.yml 配置中 port 的另一个端口 , 达到不同端口多开的效果
-Dserver.port=8993
鼠标右键红框处 选择 add bookmark 完成书签添加
我们可以在左下角的 favorites 中 ,找到bookmarks 我们还可以将添加的书签右键重命名
重命名之后:
看到这 大家应该明白书签的使用场景之一: 源码阅读
在插件marketplace中 搜索 translation 并下载安装
目前默认的是谷歌引擎(不知道后续作者会不会改) ,但是谷歌翻译已经在大陆停用了 所以我们要手动设置一下, 设置路径为Tools - Translation - 翻译引擎
使用方法: 选中我们需要翻译的单词,鼠标右键 选中Translate
效果如图: