1.常用设置
打开新的项目
- 每次打开新项目时可以默认选择是打开新窗口/替换现有窗口/询问,设置方法:File->Settings->Appearance & Behavior->System Settings -> Project -> 选择打开方式。
- 每次打开新项目想要保持一些默认的设置:File->new Projects Setup->Settings for New Projects然后打开的设置解密能看见的就是打开新项目能够默认设置的选项,如果没有显示的就不能设置的,一般我都是用来设置Maven的默认文件夹,以及下载包的策略。
编辑选项
- 自动导入包,以及自动格式化没有用到的包,当我们在选择某个类时,可以自动导入这个类(如果存在多个重名的还是需要手动选择Alt + Insert),同时如果哪个类不再使用时,可以自动清除掉import的类。 在如下图所示处两个选项打√。
- 自动补全忽略大小写:当我们输入某个匹配词想在只能匹配下拉框中显示匹配项,如果开启大小写敏感,当我们记得不清楚,把大小写记反了就无法弹出提示,只要将下图所示Match case的√去掉即可忽略大小写匹配
- 显示方法之间的分割线:当我们在一个类中写了太多方法时,可能无法分辨出方法之间的界限,可以设置方法之间的分割线来区分,在以下图中的选项中打√即可。
显示选项
- 当打开多个标签页时,可能一行放不下,所以IDEA默认会让后面打开的页签隐藏,而不是在第二行显示,可以显示多行显示,把如下图所示处的√去掉。
注释模板
类文件注释模板设置
打开Settings -> Editor -> File and Code Templates -> files -> Class
/**
* <p>
*
* </p>
* @author name
* @since ${YEAR}/${MONTH}/${DAY} ${TIME}
*/
将以上内容贴到下图中右方区域,这样每次创建中间区域类型的文件时默认就会在文件的头部加入该部分类注释信息。
方法注释模板
打开File -> Settings -> Editor -> Live Templates,选择Template group然后新建Live template
新建了之后选中新建的部分:
- Abbreviation:*,代表着以/*开头
- Options选择Tab键代表着/*之后按Tab键触发注释补全
- Template text内容填以下内容,代表着注释的具体内容
*
*
*
* @author 李泽宇10289190
* @since $date$ $time$
* @param $param$
* @return $return$
*/
- 点击Edit variables按钮来填写参数内容
date即选中下拉框中的date()即可,time即时分秒选择下拉框的time()即可,param参数利用原生的方法有问题无法完美显示,因此此处利用groovy脚本,将以下脚本分别复制粘贴到param与return的Expression一栏点击OK即可:
param:
groovyScript("def result = ''; def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i] != '' && i == 0) result += '@param ' + params[i] + ((i < params.size() - 1) ? '\\r\\n' : '') else if(params[i] != '' && i > 0) result += ' * @param ' + params[i] + ((i < params.size() - 1) ? '\\r\\n' : '') }; return result == '' ? null : result", methodParameters())
groovyScript("return \"${_1}\" == 'void' ? null : '@return ' + \"${_1}\"", methodReturnType())
最终的效果为:
编辑字体设置
设置快速补全
setting -> Editor -> Postfix Templates,设置全部打开,这样可以设置很多快捷补全
2.插件选择
必选插件
Alibaba Java Coding Guidelines+Sonar Lint
代码规范养成
AceJump
可以根据输入随意跳转到任意位置
JSON helper+Json parser
一个能够编辑json的插件,能够对json进行美化,缩成一行,以及进行转义反转义
CodeGlance3/CodeGlance pro
预览代码的一个概览框,在代码窗口右侧生产一个长条形的概览框,可以看到所有代码的概况
Translation
看源码,做国际化错误提示必备,按照完成之后选择需要翻译的内容,选中文本并右键选择Translate可以进行翻译,选择Translate and Replace可以直接翻译并替换掉该文本,快捷键Ctrl + Shift +Y可以进行翻译
Mybatis Log Free
打印Mybtais中执行SQL执行的日志,能够看到每个具体的参数而不是“?”
通过主菜单->Tools-> Mybatis Log Plugin开启
主界面如下:
如果发现这个页面下不打印入职,可以尝试在Resources目录下的application.yml文件下添加以下配置信息
mybatis:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
Mybatia智能推荐与代码生成
代码提示:MyBatisX(推荐):主要功能是在写mapper.xml时可以智能提示,能够在Mapper接口与XML之间跳转以及根据数据库自动生成对应的代码
代码生成:
- MybatisPlus(免费)
- MyBatisCodeHelperPro(收费):强烈推荐,虽然收费,但是非常好用,因为提示非常智能,且覆盖面广
Redis Helper
一款查询与操作Redis数据库的插件
Database Navigator
一款直接在IDEA中连接各种数据库进行查询与操作数据的插件
Tabnine
我愿称之为最强代码智能补全插件,节省90%的编码时间!!!
GitToolBox
git信息提示,包括提交人、时间日期以及commit内容等信息,具体到每一行
JRebel&Xrebel
JRebel是一款非常优秀的热部署插件,当我们使用这个插件后,调试过程中,修改代码后不需要重新启动服务,只需要重新编译当前类或者编译整个项目即可使修改的部分生效。
但是这个插件是收费的,我们可以通过以下方式进行简单的破解:
- 进入这个网站https://www.guidgen.com/获取一串GUID,复制之后将破解URL中的{GUID}替换,
破解url1:https://jrebel.qekang.com/{GUID}
破解url2(上面的如果没法用用这个):http://idea.javatiku.cn_/_{GUID}
将替换之后的URL粘贴到如下页面中的文本框,点击Change license进行激活:
热部署过程:
- 点击右上角的JRebel进行启动
- 修改某一处代码
- 重新编译,编译过程:主菜单Build -> Recompile/Rebuild Project。如果只需要重新编译当前类,则使用Recompile即可,如果修改的类过多,需要整体重新编译,则使用Rebuild Project
- 再次调用接口或者函数进行测试,就可以发现修改的代码生效了(再次提醒:Recompile只作用于当前页面的类或者文件,如果修改了当前类引用的其他类,而没有重新编译那个类的话,是会报错的,这个时候可以使用Rebuild将整个项目进行编译)
RestfulTool
查询接口URL并跳转到对应的代码行,安装重启IDEA之后按快捷键Ctrl + Alt + /呼出查询框,如下图所示
在输入框中进行模糊查询接口,可以搜索出所有相关的接口URL,点击即可进入相对应的Controller界面
Grep Console
让控制打印的内容更好看,更清晰。在安装完成之后打开设置界面进入如下界面进行控制台背景与字体的设置:
主要是设置背景Background以及Foreground(字体颜色),我的设置习惯如图所示,错误设置为红色,Debug信息打印为绿色,Warn警告信息为黄色,默认白色等。大家可以安装自己的习惯进行设置
PlantUML Integration
一个可以用来编写UML的插件,可以画流程图、时序图(主要)等等
Save Actions
一个在进行保存动作时做一系列格式化动作的插件
可选插件
One Dark Theme
一个一键式设置风格的主题包,下载重启之后按照如下设置:
Thme选择One Dark的即可,按照自我喜好选择风格,我用的One Dark Vivid Italic风格即可,字体可以不用OneDark的,可以使用IDEA自创的Jetbrains Mono,它号称最适合程序员看代码的字体,间距以及字体形状非常适合用来阅读代码
其实可以使用idea自带的暗黑模式,也不错
StringManipulation/CamelCase
一个能对字符串做很多操作的插件,比如矮驼峰转换,大小写转换等等
CamelCase:变量各种格式之间的切换,比如矮驼峰、大写下划线链接。安装完成之后进入如下设置界面:
首先上面的勾选框是切换的格式类型主要包括了小写横杠连接、大写下划线连接、首字母大写空格连接、首字母大写、矮驼峰格式、小写下换线连接以及小写空格连接,下面的Order是切换的优先级,选中文本之后按住Alt + Shift + U进行文本格式切换。如果不想用这个快捷键可以通过快捷键设置界面进行修改:
Generate All Getter And Setter
一键调用一个对象的所有的set、get方法,对象+ '.'就可以弹出来allget与allset方法
与GenerateO2O类似,但是这个插件强调的是把所有属性都赋值,而不是面向O2O,实体类之间的一对一赋值,效果如下图所示:
GenerateO2O
做实体属性传递的时候自动生成,使用alt + Ins弹出菜单,选择最后一个GenerateO2O
最后的效果如图所示:
POJO to JSON
一个将实体类转换成json字符串的插件,同时可以生成随机值。在类页面右键选择POJO to Json可以将实体类生成Json格式的字符串并赋值到粘贴板,可以直接粘贴到任意界面。但是这个Json是没有任何值的,可以选择POJO to Json Random Values来生成Json字符串并赋随机值。效果如下图所示:========>
SequenceDiagram
一个可以查看类时序图的插件,在任意方法上右键选择Sequence Diagram,然后就可以生成其方法的时序图,效果图如下: