打开 IDEA 的 Settings,点击 Editor-->File and Code Templates,点击右边 File 选项卡下面的 Class,在其中添加图中红框内的内容:
/**
* @author jitwxs
* @date ${YEAR}年${MONTH}月${DAY}日 ${TIME}
*/
在我提供的示例模板中,说明了作者和时间,IDEA 支持的所有的模板参数在下方的 Description 中被列出来。
保存后,当你创建一个新的类的时候就会自动添加类注释。如果你想对接口也生效,同时配置上图中的 Interface 项即可。
不同于目前网络上互相复制粘贴的方法注释教程,本文将实现以下功能:
相较于类模板,为方法添加注释模板就较为复杂,首先在 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 属性,它的意思是如果在生成注释时候如果这一项被定义了,那么鼠标光标就会直接跳过它。我并不需要这个功能,因此有被勾选该属性。
点击 OK 保存设置,大功告成!
类注释只有在新建类时才会自动生成,效果如下:
类注释
将演示以下几种情况:
方法注释
(1)为什么模板的 Abbreviation 一定要叫 \* ?Expand with 要保证是 Enter 键?
答:因为 IDEA 模板的生成逻辑是 模板名 + 生成键,当生成键是 Enter 时,我们输入 * + Enter 就能够触发模板。
这也同时说明了为什么注释模板首行是一个 * 了,因为当我们先输入 /*,然后输入 * + Enter,触发模板,首行正好拼成了 /**,符合 Javadoc 的规范。
(2)注释模板中为什么有一行空的 \*?
答:因为我习惯在这一行写方法说明,所以就预留了一行空的写,你也可以把它删掉。
(3)注释模板中 $time$$param$ 这两个明明不相干的东西为什么紧贴在一起?
答:首先网上提供的大部分 param 生成函数在无参情况下仍然会生成一行空的 @param,因此我对param 函数的代码进行修改,使得在无参情况下不生成 @param,但是这就要求 $param$ 要和别人处在同一行中,不然没法处理退格。
(4)为什么 return 参数不使用 methodReturnType(), 而要自己实现?
答:methodReturnType() 在无返回值的情况下会返回 void,这并没有什么意义,因此我对 methodReturnType() 返回值进行了处理,仅在有返回值时才生成。
(5)为什么 $return$ 不是单独一行?
答:因为当 methodReturnType() 返回 null 时,无法处理退格问题,原因同第三点。
文章作者: Jitwxs
链接: https://jitwxs.cn/4135e0a9.html
DEA 全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Java,Kotlin等少数语言。
俗话说:"工欲善其事必先利其器",今天准备和大家一起分享一下实际工作中能提升幸福感和工作效率的IDEA插件。
废话不多说,let's go !!!
1Alibaba Java Coding Guidelines
【阿里巴巴代码规范检查插件】
在你需要检查的代码上面,点击右键,选择编码规约扫描
将会出现如下所示的检查结果,并会给出编码规范和提示:
2GsonFormat
【jsonToBean】
在平时的开发中,将json转为Bean
3A8Translation
【翻译的插件】
选中你要翻译的汉语或英文,点击鼠标右键,选择Translate, (快捷键是Alt+T)就会实现翻译,不用再去切换屏幕使用翻译软件翻译了。
4Maven Helper
【分析依赖冲突的插件】
此插件可用来方便显示maven的依赖树,和显示冲突,在我们梳理依赖时帮助很大。
5Free Mybatis plugin
【增强idea对mybatis支持的插件】
生成mapper xml文件 快速从代码跳转到mapper及从mapper返回代码 mybatis自动补全及语法错误提示 集成mybatis generator gui界面 这个插件超级实用,可以从mapper接口跳转到mybatis的xml文件中,还能找到对应地方
6Grep Console
【日志高亮显示插件】
可以Ctrl + Alt +S Other Settings进行配色(颜色参考请搜索:电脑最护眼的色彩、显示屏亮度亦如此)
7Lombok
当我们创建一个实体时,通常对每个字段去生成GET/SET方法,但是万一后面需要增加或者减少字段时,又要重新的去生成GET/SET方法,非常麻烦。可以通过该插件,无需再写那么多冗余的get/set代码。
注意:需要在pom引入依赖
<!--lombok用来简化实体类:需要安装lombok插件-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
8Nyan progress bar
基于Idea使用的漂亮进度条。把你的加载进度条全都变成彩虹和猫咪
9FindBugs-IDEA
【Bug检查插件】
在文件上或文件里面点击鼠标右键,选择FingBugs
简单的bug能给你快速找回来,什么NPE啥的,小儿科!推荐!!(嗓门大就说一遍)
10Key Promoter X
你还在为记不住快捷键烦恼吗,Key Promoter X可以帮助你快速记住常用的快捷键。当你在idea中用鼠标点击菜单,它可以显示对应的快捷键以及点击次数。使用一段时间后有助于过渡到更快、无鼠标的开发。
11JavaDoc
在项目中经常要求写代码注释,否则不能通过代码门禁,JavaDoc工具可以一键生成注释。
插件安装成功后在菜单栏 code -> JavaDocs可以找到
自动生成注释效果如下:
12ignore
项目开发中通常会使用到git进行版本管理,在提交代码时经常有人将本地的不必要的文件提交到代码仓库中,使用.ignore插件可以很好解决这个问题。插件安装完成后会在项目中生成一个.ignore文件,编辑该文件忽略一些动态生成的文件,如class文件,maven的target目录等。
13RainbowBrackets
彩虹括号,代码中有多个括号会显示不同的颜色。
14Activate-power-mode
在敲代码时有抖动酷炫的特效,非常适合给前端小姐姐表演特技。(坏笑)
15CodeGlance
16GenerateAllSetter
17RestfulToolkit
18JRebel
热门部署插件,让你在修改完代码后,不用再重新启动,很实用!但是,不是免费的,需要大家发挥下聪明才智自行百度破解!
19Json Parser
厌倦了打开浏览器格式化和验证JSON?为什么不安装JSON解析器并在IDE中使用离线支持呢?JSON解析器是一个用于验证和格式化JSON字符串的轻量级插件。
20aiXcode & codota
aiXcoder是一个强大的代码完成器和代码搜索引擎,基于最新的深度学习技术。它有可能向您推荐一整套代码,这将帮助您更快地编写代码。aiXcoder还提供了一个代码搜索引擎,以帮助您在GitHub上搜索API用例。
类似功能的插件还有codota,codota基于数百万个开源Java程序和您的上下文来完成代码行,从而帮助您以更少的错误更快地进行编码。新版本的codota提供以下功能:
比如我想知道list.stream.map(…)方法的参考使用,只需要光标定位在map上,然后右键选择菜单“Get relevant examples”或者使用快捷键“Ctrl + Shift + O”就可以快速搜索出来很多示例,非常方便。
来源:blog.csdn.net/CSDN_SAVIOR/article/details/122505538
明
IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。
常用设置
*请认真填写需求信息,我们会在24小时内与您取得联系。