IDEA的基本操作、常用插件、注释模板配置
文章目录
常用快捷键
基操快捷键
快捷键组合 | 说明 |
---|---|
main或pvsm | 生成main方法 |
sout | 生成打印方法 |
变量.sout | 生成打印方法 |
ctrl+/ | 将代码注释/解注释 |
alt+enter | 自动解决报错 |
alt+Ins | 快速生成常用方法 |
变量后加.try 或选中后Ctrl+Alt+T |
快速try…catch/while/for循环 |
ctrl + shift + u | 字母大小写转换 |
ctrl + shift + f | 进行全局搜索 |
先全选再Ctrl+Alt+L | 格式化代码 |
F2 或 Shift + F2 | 高亮错误或警告快速定位 |
Ctrl+Shift+R | 搜索类或接口 |
ctrl+x | 删除当前行 |
Ctrl+Alt+左右键 | 定位到上次编辑位置 |
ctrl+d | 复制光标所在行代码,或者鼠标选中的代码 |
Shift+Ctrl+上下键 | 下上移动当行代码 |
Ctrl+P | 提示参数类型 |
编辑类快捷键
编辑类快捷键 | 介绍 |
---|---|
psvm + Tab | 生成main方法 |
sout + tab | 生成输出语句 |
Ctrl+X / Ctrl + Y | 删除一行 |
Ctrl+D | 复制一行 |
Ctrl+/ 或 Ctrl+Shift+/ | 注释代码 |
Ctrl + Z | 撤销 |
Ctrl + Shift + Z | 取消撤销 |
Ctrl + C | 复制 |
Ctrl + V | 粘贴 |
Ctrl + O | 重写方法 |
Ctrl + I | 实现方法 |
Ctr + shift + U | 大小写转化 |
Ctrl + Shift + J | 整合两行为一行 |
Ctrl + Shift + space | 自动补全代码 |
Alt + 回车 | 导入包,自动修正 |
Alt + / | 代码提示 |
Alt + Insert | 生成代码(如GET,SET方法,构造函数等) |
Ctrl + Alt + L | 格式化代码 |
Ctrl + Alt + I | 自动缩进 |
Ctrl + Alt + T | 生成try catch |
Ctrl + Alt + O | 优化导入的类和包 |
fori | 生成for循环for (int i = 0; i< ; i++) { } |
iter | 生成增强for循环 |
itar | 生成array for代码块 |
itit | 生成iterator 迭代 |
itli | 生成List的遍历 |
itco | 生成Collection迭代 |
查找、替换类快捷键
查找、替换类快捷键 | 介绍 |
---|---|
Ctrl + F | 在当前文件中查找 |
Ctrl + Shift + F | 在整个项目或者指定窗口中查找文本 |
Ctrl + N | 在项目中查找类 |
Ctrl + Shift + N | 查找文件 |
Ctrl + R | 在当前文件进行文本替换 |
Ctrl + Shift+R | 在指定窗口替换文本 |
Ctrl + W | 自动按语法选中代码 |
Ctrl + Shift + W | 反向自动按语法选中代码 |
Ctrl + G | 定位行 |
Ctrl+Shift+Backspace | 跳转到上一次编辑的位置 |
Ctrl + alt + ←/→ | 前后跳转编辑过的地方 |
Ctrl + Shift + Alt + N | 查找 变量 / 方法 |
Alt + F7 | 找到你的函数或者变量或者类的所有引用到的地方 |
Alt + F3 | 高亮显示所有该选中文本,按 Enter 选中下一个,按 Esc 高亮消失 |
F4 | 在当前类中查找变量的来源 |
Ctrl + Shift + F7 | 高亮显示所有该选中文本,按 Esc 高亮消失 |
双击Shift | 查找任何内容 |
编译、运行类快捷键
编译、运行类快捷键 | 介绍 |
---|---|
Ctrl + F9 | 编译项目 |
Ctrl + Shift + F9 | 编译当前文件 |
Shift + F10 | 正常启动 |
Alt + Shift + F10 | 弹出 Run 的可选择菜单 |
Shift + F9 | debug模式启动 |
Alt + Shift + F9 | 选择 Debug |
Debug快捷键
Debug快捷键 | 介绍 |
---|---|
F7 | 在 Debug 模式下,步入,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则不会进入该内嵌的方法中 |
Shift + F7 | 智能步入 |
Alt + Shift + F7 | 强制步入 |
F8 | 在 Debug 模式下,步过,如果当前行断点是一个方法,则不进入当前方法体内 |
Shift + F8 | 步出 |
Alt + Shift + F8 | 强制步过 |
alt + F8 | 在 Debug 模式下,选中查看值 |
Ctrl + Shift + F8 | 查看断点 |
F9 | 在 Debug 模式下,恢复程序运行。如果该断点下面代码还有断点则停在下一个断点上 |
Alt +F9 | 运行至光标的位置 |
Ctrl + Alt+ F9 | 强制运行至光标处 |
Alt + F10 | 定位到断点 |
重构快捷键
重构快捷键 | 介绍 |
---|---|
Shift + F6 | 重命名 |
Ctrl + Alt + C | 抽取常量 |
Ctrl + Alt + F | 抽取字段 |
Ctrl + Alt + M | 抽取方法 |
Ctrl + Alt + P | 抽取参数 |
Ctrl + Alt + V | 抽取变量 |
其他类快捷键
一个普通标题 | 一个普通标题 |
---|---|
Ctrl + C | 复制文件名 |
Ctrl + Shift + C | 复制文件的完整路径 |
Ctrl + E | 显示最近打开的文件 |
Ctrl + Shift + E | 显示最近修改的文件列表的弹出层 |
Ctrl + P | 方法参数提示 |
Ctrl + Q | 可以看到当前方法的声明 |
Ctrl + Alt + Space | 类名或接口名提示 |
Ctrl + F12 | 显示当前文件的结构 |
Ctrl + H | 显示当前类的结构图 |
Ctrl + Q | 显示注释文档信息 |
连按两次Shift | 弹出 Search Everywhere 弹出层,查找任任内容 |
Ctrl + [ | 移动光标到当前所在代码的花括号开始位置 |
Ctrl + ] | 移动光标到当前所在代码的花括号结束位置 |
Ctrl + K | 版本控制提交项目,需要此项目有加入到版本控制才能够使用 |
Ctrl + T | 版本控制更新项目,需要此项目有加入到版本控制才能够使用 |
Ctrl + Tab | 切换编辑窗口。如果在切换的过程又按Delete键,则是关闭对应选中的窗口 |
常用插件
插件安装教程
所有插件都是在 ctrl+alt+s 里的plugins 里进行搜索安装
常用插件
插件名称 | 描述 |
---|---|
maven-search | maven依赖搜索插件(ctrl+shift+m) |
CodeGlance | 代码迷你缩放图插件 |
Codota | 更精确的代码提示 |
Material Theme UI | 超多的主题插件,各种颜色,各种模式 |
Alibaba Java Coding Guidelines | 阿里巴巴的编码规约检查插件 |
Alibaba Cloud Toolkit | 快速项目部署到服务器 |
GenerateAllSetter | 快速生成get set |
idea zookeezper | 管理zookeeper的idea插件 |
JRebel | 热加载插件 |
Json Parser | json格式化工具 |
GsonFormat | 把 JSON 字符串直接实例化成类 |
Lombok | getter、setter、链式编程等骚操作 |
JUnitGenerator | 自动生成测试代码 |
MyBatis Log Plugin | 根据执行sql 替换掉 ? |
MyBatisCodeHelperPro | 支持mapper互跳,方法自动生成,代码自动生成 (很牛) |
Rainbow Brackets | 括号匹配配对 |
Translation | 翻译插件 |
RESTfultoolkit | 一套 RESTful 服务开发辅助工具集,根据url 查找controller |
Statistic | 代码量统计 |
MybatisX | 高效操作Mybatis插件 |
类注释、方法注释
一、类注释
打开 IDEA 的 Settings
,点击 Editor-->File and Code Templates
,点击右边 File
选项卡下面的 Class
,在其中添加图中红框内的内容:
/**
* @author jitwxs
* @date ${YEAR}年${MONTH}月${DAY}日 ${TIME}
*/
/**
* @author Zhang Ruilong
* @email 970586718@qq.com
* @date ${DATE} ${TIME}
*/
在我提供的示例模板中,说明了作者和时间,IDEA 支持的所有的模板参数在下方的 Description
中被列出来。
保存后,当你创建一个新的类的时候就会自动添加类注释。如果你想对接口也生效,同时配置上图中的 Interface
项即可。
二、方法注释
- 根据形参数目自动生成
@param
注解 - 根据方法是否有返回值智能生成
@Return
注解
相较于类模板,为方法添加注释模板就较为复杂,首先在 Settings
中点击 Editor-->Live Templates
。
点击最右边的 +
,首先选择 2. Template Group...
来创建一个模板分组:
在弹出的对话框中填写分组名,我这里叫做 userDefine:
然后选中刚刚创建的模板分组 userDefine
,然后点击 +
,选择 1. Live Template
:
此时就会创建了一个空的模板,我们修改该模板的 Abbreviation
、Description
和 Template text
。需要注意的是,Abbreviation
必须为 *
,最后检查下 Expand with
的值是否为 Enter 键。
上图中· Template text
内容如下,请直接复制进去,**需要注意首行没有 **/
,且 \*
是顶格的。
*
* @author jitwxs
* @date $date$ $time$$param$ $return$
*/
注意到右下角的 No applicable contexts yet
了吗,这说明此时这个模板还没有指定应用的语言:
点击 Define
,在弹框中勾选Java
,表示将该模板应用于所有的 Java 类型文件。
设置 applicable contexts
还记得我们配置 Template text
时里面包含了类似于 $date$
这样的参数,此时 IDEA 还不认识这些参数是啥玩意,下面我们对这些参数进行方法映射,让 IDEA 能够明白这些参数的含义。点击 Edit variables
按钮:
为每一个参数设置相对应的 Expression
:
设置 Expression
需要注意的是,date
和 time
的 Expression
使用的是 IDEA 内置的函数,直接使用下拉框选择就可以了,而 param
这个参数 IDEA 默认的实现很差,因此我们需要手动实现,代码如下:
groovyScript("def result = '';def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i] != '')result+='* @param ' + params[i] + ((i < params.size() - 1) ? '\\r\\n ' : '')}; return result == '' ? null : '\\r\\n ' + result", methodParameters())
另外 return
这个参数我也自己实现了下,代码如下:
groovyScript("return \"${_1}\" == 'void' ? null : '\\r\\n * @return ' + \"${_1}\"", methodReturnType())
注:我没有勾选了
Skip if defined
属性,它的意思是如果在生成注释时候如果这一项被定义了,那么鼠标光标就会直接跳过它。我并不需要这个功能,因此有被勾选该属性。
模板
已有的常用模板
- psvm : 可生成 main 方法
- sout : System.out.println() 快捷输出
- fori : 可生成 for 循环
- list.for : 可生成集合 list 的 for 循环
- ifn:可生成 if(xxx = null)
- prsf:可生成 private static final
修改/创建模板
通过调用 psvm 调用 main 方法不习惯,可以改为跟 Eclipse 一样,使用 main 调取
创建xml模板
- File—Setting,左上角输入template,
- 在左侧栏找到File And Code Templates
- 中间选中Files
- 点击 + 号,添加模板
- 输入模板名字:applicationContext (name可以自定义)
- 后缀名extension:xml
- 在面板中输入内容(看下面代码)
- 把Enable live Template(激活模板)勾选上
- 点击Apply—OK
生成 javadoc
- Locale:输入语言类型:zh_CN
- Other command line arguments:-encoding UTF-8 -charset UTF-8
优化导包配置
取消tab页单行显示
双斜杠注释改成紧跟代码头