一、概述
IDEA(IntelliJ IDEA)是业界公认的最好开发工具之一,当然好不好也因人而异,也不要刻意去争谁强谁弱,高手往往不在乎手中的兵器是什么的。个人而言,更高效的工具适合每个开发人员,在编写代码的时候花的时间少,就有更多的时间去设计代码,当然,使用一个陌生的IDE,效率肯定是比不上自己熟练的IDE的,所以为了节省诸君的学习成本,也为了更快地去接纳和熟练IDEA,所以周末之余,故作此文。—- 一品江南
准备
所有的电脑软件都有着相同的UI框架、菜单结构,对于每一个开发人员来说,基本的文件操作、项目操作、工作空间操作不成问题,不会讲到。
涉及的其他工具(Maven、Git等)不会详细讲,只会讲到如何操作,想要深入学习,关注其他博文。
二、配置
在安装软件(JDK、Maven、Git、IDEA)搭建好环境后,要对IDEA进行一番配置,才能开始开发,每个人都有每个人的配置习惯,可以自己研究自己喜欢的配置,进入IDEA的配置 File | Settings(Ctrl+Alt+S)开始配置。
选择菜单或设置步骤使用 “|” 分开,后面操作一样
配置骚气的背景图片:Appearance & Behavior | Appearance | UI Options | Background Image…
在配置中选择合适的窗口选项:Appearance & Behavior | Appearance | Window Options
Animate windows:关闭动画效果
Show memory indicator:显示内存使用情况
Show tool window bars:关闭工具栏显示,按两次Alt键可以显示
Small labels in editor tabs:编辑器显示小标签
配置自己想看到的菜单项和工具栏:Appearance & Behavior | Menus and Toolbars
配置启动退出和保存同步:Appearance & Behavior | System Settings
配置Git的Pull操作快捷键:Version Control Systems | Git | Repository | Pull 添加Alt+P
配置Maven窗口显示快捷键:Tool Windows | Maven 添加 Alt+3
优化导包:Editor | General | Auto Import | Java
Insert imports on paste: All:粘贴的时候导入全部包
Add unambiguous imports on the fly
Optimize imports on the fly (for current project)
配置显示行号和方法分隔线:Editor | General | Appearance
Show line numbers
Show method separators
配置代码折叠规则:Editor | General | Code Folding
配置编辑器标签页:Editor | General | Editor Tabs
Show tabs in one row:多行显示标签
配置高效的智能键:Editor | General | Smart Keys
Insert paired brackets (), [], <>:成双成对输入
Reformat block on typing ‘}’:输入’}’后格式化代码
Use “CamelHumps” words:使用驼峰词,使用Ctrl+Righ/Left可以词内移动
Jump outside closing bracket/quote with Tab:使用Tab键跳到括号/引号外面
配置牛逼的字体:Editor | Font
Enable font ligatures:使用连字符
推荐字段:Fira Code,使用连字符输入>=,<=,==,!=,=>等符号有惊喜。
配置文件和代码模板:Editor | File and Code Templates
配置文件编码:Editor | File Encodings
建议全部配置成 UTF-8
配置代码片段:Editor | Live Templates
添加高效的代码片段可以提高效率
编译构建
配置JDK环境:File | Other Settings | Structure for New Projects… | Project | Project SDK
配置Maven构建:Build, Execution, Deployment | Maven
配置Maven主目录:D:/apache-maven-3.5.4
配置用户Maven设置文件:D:\apache-maven-3.5.4\conf\settings.xml
配置本地仓库:D:\apache-maven-3.5.4\repo
Always update snapshots:构建时总是更新依赖快照版本
版本管理
配置Git管理:Version Control | Git
配置Git路径:D:\Program Files\Git\bin\git.exe
运行内存
编辑IDEA安装目录下bin目录:D:\IntelliJ IDEA\bin\idea64.exe.vmoptions文件
-Xms750m
-Xmx750m
运行内存配置可以配置IDEA初时内存大小和最大内存数,根据自己电脑配置优化
三、视图
好的界面布局和主题,会让开发者更舒适。快速地能看到想要的信息,会让开发者事半功倍。
1.0 工具
常用的工具栏默认位于IDEA界面的左、右、下三侧,也可以用鼠标悬停界面左下角图标弹出所有工具栏,你如果在前面主题与行为中配置隐藏工具栏显示,可以按两次 Alt 键显示。按键Esc可以帮助你从任何激活的工具栏返回到代码编辑。每个工具栏窗口顶部都会有一个Toolbar,可快速实现某些常用功能以及配置。
推荐使用快捷键弹出想要使用的工具栏,不建议修改默认快捷键,但常用的工具栏如果没有快捷键,应当自定义:
Alt+1:Project
Alt+2:Favorites
Alt+3:Maven(自定义)
Alt+4:Run
Alt+5:Debug
Alt+6:TODO
Alt+7:Structure
Alt+9:Version Control
Alt+F12:Terminal
1.1 Project
Project工具栏主要是管理项目文件和目录,所有的项目资源都能在些找到,而且它可以有多种管理形式,可以更好聚焦于当前工作。
管理形式
Project:显示项目所有资源
Packages:显示项目所有包,适合开发模式
Tests:显示项目所有测试资源,适合测试模式
Problems:显示项目所有问题,所有存在问题的代码都会列举
Changed Files:显示项目所有修改资源,VCS中修改未提交的代码
Toolbar:
Scroll form source:从当前打开的文件定位文件树位置
Collapse All:折叠所有目录(Ctrl+-)
Setting:打开工具栏设置
Flatten Packages:平铺展示所有包
Compact Middle Packages:折叠包名显示
Hide:隐藏工具栏(Shift+Esc)
由于所有的工具栏都会有Setting和Hide,所以后面不会再说,在Setting里面会挑选几个常用的设置说。在Setting中的View Mode配置工具栏的显示模式:
Dock Pinned:钉住停靠显示
Dock Unpinned:不钉信停靠显示,激活其他工具栏隐藏
Undock:不停靠显示,类似Dock Unpinned
Float:浮动显示
Window:窗口模式显示,在全屏查看日志时非常有用
技巧
在展开的文件树中,可以直接输入字母对类或包进行模糊搜索,快速定位目标。
在很多的窗口都可以这样进行模糊搜索,可以自己大胆尝试,效率大大地提高,不过注意要使用英文输入法。
使用 Left/Right 键可以快速折叠/展开当前目录
使用 Alt+Home 可以导航当前项目
1.2 Favorites
Favorites可以用来管理开发人员高频使用的目录或文件,可以是包和类,或者是类中的某一行,它分为三类:
项目:在Project工具栏中对包或类右击选择 Add Favorites 添加
书签:在Project工具栏中对包或类或者代码某行,按 F11 添加书签
断点:打断点就会创建
在很多地方使用 F4 快捷键可以快速跳转到源码或目录位置。比如选中 Favorites 中的某个书签或断点,选中 VCS 中的某个记录文件。
1.3. Maven
Maven是管理Maven项目的工具集合,可以执行Maven的生命周期和插件,可以查看依赖等。
Toolbar:
Reimport All Maven Projects:重新导入Maven项目和依赖
Generate Sources and Update Folders For All Projects:创建源码更新目录
Download Sources and/or Documentation:下载源码或文档
Add Maven Projects:添加Maven项目
Run Maven Build:运行Maven生命周期或插件Goal
Execute Maven Goal:运行Maven插件Goal
Toggle Offline Mode:切换离线模式
Toggle ‘Skip Tests’ Mode:是否跳过测试
Setting
Group Modules:Maven模块分组展示
Always Show ArtifactId:总是展示项目ArtifactId
Profiles
选择激活Maven配置的Profile
1.4 TODO
TODO是管理项目代码中所有含有 // TODO 注释以及 // FIXME 注释的代码,这类特殊注释可以帮助开发人员处理事务。
1.5 Structure
Structure可以管理文件结构,包括类、接口等源文件的属性、方法等。
Toolbar:
Sort by Visibility:按可见性排序
Sort Alphabetically:按字母排序
Group Methods by Defining Type:方法按类型分组
Show Properties:显示属性
Show Fields:显示字段
Show non-public:显示非公共的
Show Inherited:显示继承的
Show Anonymous Classes:显示匿名类
Show Lambdas:显示Lambda
Autoscroll to Source:自动定位到源码
Autoscroll from Source:自动从源码定位
1.6 Version Control
Version Control是版本管理工具,这里使用Git为例,它一般会有两个固定标签页 Local Changes 和 Log,用来管理本地修改和提交日志。
Toolbar:
Refresh:刷新本地修改列表
Commit:提交(Ctrl+K)
Revert:撤消选中的修改(Ctrl+Alt+Z)
Show Diff:查看修改源文件的Diff(Ctrl+D)
Changelists:把修改源文件分组
Shelve Silently:搁置修改源文件(Ctrl+Alt+H)
Group By:分组方式:Directory、Repository、Module
Ignored Files:忽略的文件
Expand All:展开所有目录(Ctrl++)
Collapse All:折叠所有目录(Ctrl+-)
Preview Diff:预览修改源文件的Diff
技巧
查看Diff或者合并冲突的时候使用 F7/Shift+F7 查看下一个/上一个修改或冲突。
在提交代码的时候,可以查看历史的Commit信息。
在提交代码的时候可以配置提交方式和提交前置事件。
提交方式:
Amend commit:和上一次提交合并,等于命令 git commit –amend
Sign-off commit:在提交信息后面追加用户签名
提交前置事件:
Alibaba Code Guidelines:阿里开发规约检测(插件)
Reformat code:格式化代码
Optimize imports:优化包的导入
Perform code analyses:代码分析
Check TODO(Show All):检查TODO
前置事件非常有用,在提交代码前会自动优化代码的格式以及检查出不合格的代码。
在推送(Ctrl+Shift+K)代码到远程仓库的时候,可以配置推送Tag以及强推。
在IDEA状态栏右边可以操作Git仓库的分支,包括本地仓库和远程仓库。
1.7 Event Log
Event Log 查看IDEA全局操作的所有日志,当某些操作异常了,可以在此找到答案。
1.8 Spring
Spring可以根据当前的Spring框架管理Bean和MVC,对于使用Spring框架的开发人员来说,非常方便。
技巧
在Spring项目中,在自己创建的properties配置文件,在添加配置的时候,只有默认的application.properties文件才会有上下文提示,可以在项目右击菜单中 Open Module Settings (F4)中将properties文件添加到Spring上下文环境中。
1.9 Terminal
Terminal是IDEA的集成终端,方便执行命令行。
技巧
Windows系统的开发人员会觉得CMD的功能太弱鸡,所以会使用Git软件自带的Bash,可以将Bash集成到IDEA中。
IDEA集成终端配置Bash:File | Settings | Tools | Terminal | Application settings
Shell path:D:\Program Files\Git\bin\bash.exe
NOTE:如果终端出现乱码问题,可以百度解决,很简单。
2.0 Web
Web工具栏和Java Enterprise工具栏有点类似,在Web项目中,会管理Servlet、Filter、Listener,当然,如果我们的项目中只用到SpringMVC,而不是自己编写Servlet的话,这工具似乎没有太多的作用。
代码
在代码视图中,主要是使用快捷键快速浏览一些代码的信息,这些快捷键在开发过程中也是大有用处的。
查看当前变量、方法、类等的定义:Ctrl+Shift+I
查看当前变量、方法、类等的文档注释:Ctrl+Q
查看当前方法的参数信息:Ctrl+P
查看当前输入表达式信息:Ctrl+Shift+P
查看当前上下文信息:Alt+Q(可以查看当前类文件类定义信息)
技巧
使用Ctrl+Shift+I快速查看当前枚举、常量的信息
调用方法的时候使用Ctrl+P查看当前参数输入情况,由其是重载方法的情况
使用Ctrl+Shift+P快速修改某段代码
文件
在文件视图中,可以导航最近修改的文件或位置。
查看最近修改的文件:Ctrl+E
查看最近修改的位置:Ctrl+Shift+E
窗口
窗口视图可以设置IDEA主界面的显示方式。
演示模式:View | Enter Presentation Mode
专注模式:View | Enter Distraction Mode
全屏模式:View | Enter Full Mode
四、导航
想去哪儿就去哪儿,定位问题与查阅代码都很方便。
文件
类全局查找:Ctrl+N
文件全局查找:Ctrl+Shift+N
符号全局查找:Ctrl+Alt+Shift+N
行/列定位:Ctrl+G
退回上/下一个位置:Ctrl+Alt + Left/Right
跳转到文件上/下一个修改的位置:Ctrl+Alt+Shift + Top/Bottom
切换文件标签页:Ctrl+Tab和Ctrl+Shift+Tab
代码
跳转到属性、方法、类定义的位置:Ctrl+B
跳转到接口、方法实现的位置:Ctrl+Alt+B
跳转到类型定义的位置:Ctrl+Shift+B
跳转到父类,父方法的位置:Ctrl+U
跳转类测试类、方法的位置:Ctrl+Shift+T
跳转到下一个错误位置:F2
跳转到上一个错误位置:Shift+F2
跳转到上/下一个方法位置:Alt + Top/Bottom
跳转到大括号开头/结尾:Ctrl + [/]
在代码编辑器的左侧会存在Gutter图标,在设置 File | Settings | Editor | General | Gutter Icons 中我们可以看到这些图标的含义,单击图标也可以跳转到对应的位置。
结构
查看文件结构:Ctrl+F12
查看文件路径:Ctrl+Alt+F12
查看类型层次结构:Ctrl+H
查看方法层次结构:Ctrl+Shift+H
查看调用层次结构:Ctrl+Alt+H
技巧
在查找类、文件的时候可以通过特殊符号定位到类中的某个方法或某行。
这个方法在定位问题的时候大有用处,而且只需简单的规则,就可以形成代码的坐标。
使用#标记类或文件中的某个方法或属性:HttpProxy#get
使用:标记类或文件中的某行某列:HttpProxy:37:10
在团队之间发送代码位置的时候,使用右击菜单中 Copy Reference(Ctrl+Alt+Shift+C)来复制某个类、方法、属性等的唯一坐标,然后开发人员可以使用Ctrl+N输入坐标来定位代码。
查看类型层次结构的时候可以使用 Ctrl+Alt+U 来显示类的UML图。
在Project文件树中也可以选择类使用 Ctrl+Alt+U生成UML图。
五、代码
高效编辑代码,节省苦力活,缩短开发时间,今天不加班。
插入
重写父类方法:Ctrl+O
实现父类接口:Ctrl+I
生成代理方法:Code | Delegate Methods
生成多种代码:Alt+Insert
Constructor:构造方法
Getter:Get方法
Setter:Set方法
Getter and Setter:Get方法和Set方法
equals() and hashCode():equals方法和hashCode方法
toString():toString方法
Test:测试类或测试方法
Copyright:版权信息
@Autowired Dependency:注入Spring Bean
插入包围代码:Ctrl+Alt+T
if / else / while / for
try / catch / finally
synchronized / Runnable
region…endregion Comments
去除包围代码:Ctrl+Shift+Delete
补全当前词语:Alt+/或Alt+Shift+/
当前行前面插入一行:Ctrl+Alt+Enter
当前行后面插入一行:Shift+Enter
删除当前行或选中行:Ctrl+Y
重复插入当前行或选中行:Ctrl+D
在编写代码的时候,经常会要记录一些非代码文件,可以使用 Ctrl+Alt+Shift+Insert 来新建草稿文件,支持多种格式,新建好的草稿文件会保存在 Project 文件树的/Scratches and Consoles/Scratches目录下。
选择
选择当前光标所在区域:Ctrl+W,重复使用扩大选择范围
缩小当前选择范围:Ctrl+Shift+W
选择当前光标所在表达式:Ctrl+Shift+P
格式
插入行注释:Ctrl+/
插入块注释:Ctrl+Shift+/
格式化代码:Ctrl+Alt+L
自动缩进对齐:Ctrl+Alt+I
生动优化导包:Ctrl+Alt+O
列自动对齐:Code | Align to Columns
代码折叠
折叠/展开当前代码段:Ctrl + -/+
折叠/展开全部代码:Ctrl+Shift + -/+
折叠全部文档注释:Code | Folding | Collapse doc comments
展开全部文档注释:Code | Folding | Expand doc comments
移动
代码语句上/下移动:Ctrl+Shift + Up/Bottom,可以简单移动方法的位置
代码行上/下移动:Alt+Shift + Up/Bottom
片段
在快捷键与编辑器配置中说到了如何配置代码片段,代码片段可以明显地提高编辑代码的速度,由其插入高频代码。
智能片段:可以直接输入,也可以使用Ctrl+J来选择
包围片段:可以选中一段代码使用Ctrl+Alt+J插入,也可以使用Ctrl+Alt+T
纠错
在代码中存在红色波浪线的代码都是有问题的代码
右侧滚动条上方图标不为绿色的对钩时表示该文件中存在有问题的代码
可以点击滚动条的彩色条来定位有问题的代码
也可以使用F2和Shift+F2来快速定位有问题的代码
滚动条的彩色条颜色决定着问题的严重性,例:警告、错误等
光标置于错误代码的时候,左侧会出现电灯泡,单击它有解决办法
使用快捷键 Alt+Enter 和单击电灯泡的功能一样
不管代码有什么问题,使用 Alt+Enter 总能找到解决办法。
不要轻易关闭代码的错误提示,级别较低的警告可以酌情处理
网上有许多坑人的教程,解决报红的错误的办法就是把错误提示关掉,万不可取。
技巧
在接口名称AE选择 Implement interface 快速添加接口的实现类。
在抽象类名称AE选择 Implement abstract class 快速添加抽象类的实现类。
在类名称AE选择 Create subclass 快速添加该类的子类。
在接口、抽象类、类名称AE选择 Create Test 快速添加类的测试类。
在方法名称AE选择 Generate missed test methods 创建测试方法。
在方法名称AE选择 Generate overloaded method with default parameter values 创建当前方法的重载方法。
在属性、方法、类名称AE选择 Add Javadoc 快速添加文档注释。
在正则表达式字符串AE选择 Check RegExp 校验正则表达式。
AE表示使用Alt+Enter快捷键
在光标拖动选择的时候按住Alt键可以垂直选择进行多行编辑。
按住 Alt+Shift 键使用光标单击可以进行多个位置编辑。
在使用Ctrl+F的时候,想要编辑所有的结果可以使用Ctrl+Alt+Shift+J。
六、分析
分析项目,分析代码,才能分析设计。
代码
检查代码:Analyze | Inspect Code
检查代码并修复:Analyze | Code Cleanup
依赖
分析依赖信息:Analyze | Analyze Dependencies
分析被依赖信息:Analyze | Analyze Backward Dependencies
分析Module依赖信息:Analyze | Analyze Module Dependencies
分析依赖矩阵:Analyze | Analyze Dependency Matrix
数据
分析传递到当前的数据流:Analyze | Analyze Data Flow to Here
分析从当前开始传递的数据流:Analyze | Analyze Data Flow from Here
分析异常堆栈信息:Analyze | Analyze Stack Trace
技巧
分析数据流可以追踪方法调用关系。
可以使用分析异常堆栈信息来处理异常日志。
七、重构
珍惜每一次重构的机会,尽量把项目设计的更好。
重构
重构当前代码:Ctrl+Alt+Shift+T
重命名:Shift+F6
修改类或方法签名:Ctrl+F6
修改定义类型:Ctrl+Shift+F6
修改成静态定义:Refactor | Make Static
修改成实例方法:Refactor | Convert To Instance Method
移动/复制:F6/F5(可以移动静态变量或方法)
安全删除:Alt+Delete
提取方法生成代理类:Refactor | Extract | Delegate
提取方法生成接口:Refactor | Extract | Interface
提取方法生成父类:Refactor | Extract | Superclass
优化
对当前表达式提取并封装:Refactor | Extract
提取为变量:Ctrl+Alt+V
提取为常量:Ctrl+Alt+C
提取为类属性:Ctrl+Alt+F
提取为方法参数:Ctrl+Alt+P
提取为函数式参数:Ctrl+Alt+Shift+P
提取为函数式变量:Refactor | Extract | Functional Variable
提取方法的多个参数封装为对象:Refactor | Extract | Parameter Object
提取为方法:Ctrl+Alt+M
提取为方法并封装成对象:Refactor | Extract | Method Object
对当前表达式去除封装:Refactor | Inline
查找并封装重复代码:Refactor | Find and Replace Code Duplicates
倒置布尔类型:Refactor | Invert Boolean
去除中介调用:Refactor | Remove Middleman
包装方法返回结果:Refactor | Wrap Method Return Value
使用方法概括属性:Refactor | Encapsulate Fields
变量的初始化提取为方法:Refactor | Replace Temp with Query
使用工厂方法替换构造方法:Refactor | Replace Constructor with Factory Method
使用构建器替换构造方法:Refactor | Replace Constructor with Builder
使用安全的类型填充泛型:Refactor | Generify
继承
将类成员推送到父类:Refactor | Pull Members Up
将类成员拉取到子类:Refactor | Push Members Dowm
使用接口替换类定义:Refactor | Use Interface Where Possible
使用代理来替换继承:Refactor | Replace Inheritance with Delegation
匿名类替换成内部类:Refactor | Convert Anonymous to Inner
技巧
在Controller方法中,使用 Refactor | Extract | Parameter Object 把多个接收表单的参数封装成VO类。
灵活运用好重构技能,编码速度可以提高几个档。
八、构建
蛋变成鸡的一步,怎样处理好一个蛋,一窝蛋?
构建
构建项目:Build | Build Project (Ctrl+F9)
重新构建项目:Build | Rebuild Project (Ctrl+Shift+F9)
构建Module:Build | Build Module
运行
在菜单 Run 下面会有相关运行的操作,可以在 Run | Edit Configurations 中管理配置各种运行方式。
运行/调试:Shift + F10/F9
运行/调试列表:Alt+Shift + F10/F9
停止/重启:Ctrl + F2/F5
2.1 Main
如果代码中存在Main方法,并以Main方法形式启动,打开Main方法所有类,除了使用 Alt+F10 或 Alt+Shift+F10 启动之外,也可以单击类名或方法名所在的运行Gutter图标。
如果想要全屏或者分屏显示运行日志,可以把运行工具窗口的 View Mode 设置成 Window 模式。
2.2 Tomcat
如果Web项目要使用Tomcat启动,则先要配置Tomcat Server运行方式,在 Run | Edit Configurations 添加该运行方式,在添加列表中选择 Tomcat Server | Local,配置好后即可运行。
在配置之前需要在本地下载Tomcat,在 Edit Configurations 配置中可以不仅可以添加运行方式,还可以对每个运行方式进行其他配置,比如:VM Options 等。
调试
使用Debug启动可以快速定位问题,打断点步进调试是每个开发人员必备的技能,这里不多说,常用快捷键:
每行执行:F8
进入方法:F7
跳出方法:Shift+F8
执行到下一个断点:F9
跳转到当前执行的断点位置:Alt+F10
计算表达式:Alt+F8
技巧
在断点停止的时候可以使用计算表达式来调试断点前的数据。
不小心跳过了自己想要调试的断点,可以使用 Drop Frame 来删除当前栈帧,来重新执行方法。
在栈帧窗口(Frames)右击,可以使用 Force Return 来强制返回当前方法,或使用 Throw Exception 来抛出异常。
九、工具
IDEA不仅仅只是一个写代码的软件,还拥有开发过程中经常使用的工具。
数据库
在视图工具栏 View | Tool Windows | Database 中可以找到Database工具,点击Toolbar上的加号可以添加数据源,配置好服务器和驱动后就可以使用了,打开 Console 输入SQL,使用 Ctrl+Enter 执行。
服务器管理
在工具栏 Tools | Deployment | Browse Remote Host 菜单打开Remote Host工具,点击 … 配置服务器,配置好了之后就可以操作 Remote Host 的文件树了。
HTTP客户端
在任何目录下都可以右击新建文件的时候创建 New HTTP Request 文件来编写HTTP报文来请求和测试HTTP接口,推荐在test目录下创建。创建测试文件如下:
GET http://localhost:80/api/item?id=99
Accept: application/json
点击每个请求报文左侧的运行Gutter图标就可以发送请求,同样创建POST请求:
POST http://localhost:80/api/item?id=99
Content-Type: application/x-www-form-urlencoded
id=1&name=2&gender=1&mobile=1413131212
可以在请求报文中使用环境变量,使用来引用变量,变量可以在配置文件(http-client.env.json或rest-client.env.json)中定义:
{
"local": {
"host": "http://localhost:8080",
"x_token": "token"
},
"test": {
"host": "http://10.250.1.122:8087",
"x_token": "token"
}
}
在运行的时候选择不同的环境使用不同的变量:
POST {{host}}/api/item
Content-Type: application/json
{
"name": "ajn",
"age": 24
}
变量也可以在响应脚本中使用client.global.set设置和使用client.global.get获取。
可以使用响应脚本来测试HTTP请求,脚本使用Javascript语言编写:
GET https://httpbin.org/status/404
Accept: application/json
{%
client.test("Request executed successfully", function() {
client.assert(response.status === 200, "Response status is not 200");
});
%}
响应脚本API详解:
client:客户端对象
global:全局变量属性
set(string, object):设置变量
get(string):获取变量
isEmpty():判断全局变量是否为空
clear(string):清除某个变量
clearAll():清除所有变量
test(string, function):测试函数
assert(boolean, string):断言函数
log(string):输出日志函数
response:响应对象
body:响应体
headers:响应头
status:响应状态码
contentType:响应的ContentType头
4. SSH会话
在工具栏 Tool | Start SSH session 菜单可以新建SSH会话,在前面服务器管理中如果创建了服务器,会自动添加该服务器的SSH会话。
十、插件
强大的功能,还远远不够,一个合格的软件,都应支持功能自由地扩展。
- Lombok
Lombok插件支持代码中使用Lombok注解编译生成Get和Set等方法,该插件不仅支持注解,它在菜单中添加了两个功能:
Refactor | Lombok:插入Lombok注解
Refactor | Delombok:将Lombok注解生成代码
更多设置:File | Settings | Other Settings | Lombok plugin
- Alibaba Java Coding Guidelines
该插件是结合阿里巴巴Java开发规约而出的,主要功能用于检测代码是否条例阿里开发规范,它结合了IDEA的纠错功能可以快速定位问题和修复问题,在菜单中添加的功能有:
Tool | 阿里编码规约
阿里规约插件提示的问题也可以使用 Alt+Enter 来寻找解决办法。
技巧
根据阿里规约,快速分析代码并一键修复。
- CamelCase
CamelCase添加一个快捷键 Alt+Shift+U来修改标识符的下划线、小驼峰、大驼峰等格式,并支持批量转换。
按住 Alt+Shift 使用鼠标单击可以选择多选编辑。
- Easy Code
Easy Code插件可以根据数据库表和模板来生成代码,可以解决编写重复底层代码的问题。添加的设置项有:
配置编码和作者名称:Other Settings | Easy Code
配置类型映射:Other Settings | Easy Code | Type Mapper
配置模板:Other Settings | Easy Code | Template Setting
配置全局模板:Other Settings | Easy Code | Global Config
只需在 Database 工具栏选中一个或多个表,右击 EasyCode | Generate Code 就可以生成代码,针对单表配置类型映射可以右击 EasyCode | Config Table 来配置。
- GenerateAllSetter
该插件可以一键调用对象的所有Setter方法,在新建对象实例后使用 Alt+Enter 弹出面板中菜单:
创建似有Setter不带默认值:Generate all setter no default value
创建似有Setter带默认值:Generate all setter with default value
- Maven Helper
该插件用于Maven管理,可以分析Maven依赖结构和执行Maven生命周期,添加快捷键 Ctrl+Alt+R 来运行Maven生命周期,可以在 File | Settings | Other Settings | Maven Helper 中进行设置,另外一个功能就是在pom.xml文件下方添加了一个Dependency Analyzer标签,可以用来分析Maven依赖,可以查看和解决Maven依赖冲突。
- MyBatisX
MyBatisX插件主要增强了IDEA对MyBatis框架的支持,可以在 File | Settings | Other Settings | Mybatis 进行设置,它添加的功能有:
检验Mapper层的代码逻辑
添加Mapper层接口与XML文件跳转功能的Gutter图标
快速根据接口生成XML标签
接口参数生成 @Param 注解
- RestfulToolkit
该插件是管理Restful接口的工具集,它提供的功能有:
使用快捷键 Ctrl+\ 来根据URL来跳转到方法定义
提供了一个接口的树形窗口
提供了一个简单的HTTP请求工具
在请求方法上生成特殊字符串并复制的功能
复制K-V形式的QueryString:Generate & Copy Query Param (Key value)
复制JSON形式的请求体:Generate & Copy RequestBody (JSON)
复制相对路径URL:Generate & Copy Relation URL
复制全路径URL:Generate & Copy Full URL
在Java类上生成JSON并复制的功能
复制压缩格式的JSON:Convert to JSON(Compressed)
复制JSON:Convert to JSON
参考文献
IDEA快捷键手册:Help | Keymap Reference
IDEA 2019.1 官方文档:https://www.jetbrains.com/help/idea/2019.1/