IDEA类和方法注释模板设置
文章摘要
本文介绍了在IDEA中设置类和方法注释模板的步骤:类模板通过File and Code Templates配置,自动添加作者、日期等信息;方法模板在Live Templates中创建,使用快捷键和脚本优化参数格式,以生成规范注释。
类注释模板 ==================================================================== 1、File-->settings-->Editor-->File and Code Templates-->Files 我们选择Class文件(当然你要设置接口的还也可以选择Interface文件) (1)${NAME}:设置类名,与下面的${NAME}一样才能获取到创建的类名 (2)TODO:代办事项的标记,一般生成类或方法都需要添加描述 (3)${USER}、${DATE}、${TIME}:设置创建类的用户、创建的日期和时间,这些事IDEA内置的方法,还有一些其他的方法在绿色框标注的位置,比如你想添加项目名则可以使用${PROJECT\_NAME} (4)1.0:设置版本号,一般新创建的类都是1.0版本,这里写死就可以了 ![](https://oss.120120.top/hiro/2023/02/14/8cfde498-1d5d-4afa-adbf-925ac42d6511.jpeg) 2、效果图展示 ![](https://oss.120120.top/hiro/2023/02/14/17d8e048-0389-49c6-8776-590cd2da0ffd.jpeg) [](https://www.cnblogs.com/gscq073240/articles/16218924.html)三、方法注释模板 ===================================================================== [](https://www.cnblogs.com/gscq073240/articles/16218924.html)1、创建模板 ------------------------------------------------------------------- IDEA还没有智能到自动为我们创建方法注释,这就是要我们手动为方法添加注释,使用Eclipse时我们生成注释的习惯是 /\*\*+Enter,这里我们也按照这种习惯来设置IDEA的方法注释 1、File-->Settings-->Editor-->Live Templates ![](https://oss.120120.top/hiro/2023/02/14/cfbcfd2a-e8cd-4182-8695-7629d9238b7c.jpeg) (1)新建组:命名为userDefine ![](https://oss.120120.top/hiro/2023/02/14/ac56f121-9059-4e7a-8c9b-757752c1d3b3.jpeg) (2)新建模板:命名为\* 因为IDEA生成注释的默认方式是:/\*+模板名+快捷键(比如若设置模板名为add快捷键用Tab,则生成方式为 /\*add+Tab),如果不采用这样的生成方式IDEA中没有内容的方法将不可用,例如获取方法参数的methodParameters()、 获取方法返回值的methodReturnType() ![](https://oss.120120.top/hiro/2023/02/14/1d74ae8b-8b42-4921-ae33-5a3b954f131c.jpeg) (3)设置生成注释的快捷键 ![](https://oss.120120.top/hiro/2023/02/14/a4e5f789-9850-45bb-9e0d-24bab6ecbf0f.jpeg) [](https://www.cnblogs.com/gscq073240/articles/16218924.html)2、设置模板内容-IDEA格式模板 ------------------------------------------------------------------------------ 注意第一行,只有一个\*而不是/\* 在设置参数名时必须用${参数名}$的方式,否则第五步中读取不到你设置的参数名 ```java * * 描述 * @author ynx * @date $date$ $time$ $params$ * @return {@link $return$} */ ``` [](https://www.cnblogs.com/gscq073240/articles/16218924.html) 4、设置模板应用场景 ----------------------------------------------------------------------- 点击模板页面最下方的警告,来设置将模板应用于那些场景,一般选择EveryWhere-->Java即可 (如果曾经修改过,则显示为change而不是define) ![image-1683702433614](https://oss.120120.top/halo/image-1683702433614.png) ![](https://oss.120120.top/hiro/2023/02/14/cd4062f9-6208-4ae2-89c2-7fa812552d33.jpeg) ![](https://oss.120120.top/hiro/2023/02/14/e479976d-adce-4c51-bf95-903f1e94446d.jpeg) [](https://www.cnblogs.com/gscq073240/articles/16218924.html)5、设置参数 ------------------------------------------------------------------- 选择右侧的Edit variables按钮 PS:第4步和第5步顺序不可颠倒,否则第5步将获取不到方法 ![](https://oss.120120.top/hiro/2023/02/14/b4b0ee62-2beb-49c7-8157-31ec3a89e041.jpeg) 1、IDEA格式的模板只需要为每个参数选择对应的方法即可 ![image-1683702470590](https://oss.120120.top/halo/image-1683702470590.png)![] 2、JavaDoc格式的需要自定义参数以及返回值的实现方式 获取参数实现方式: ```java groovyScript("def result = '';def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i] != '')result+=' \\t * @param ' + params[i] + ((i < params.size() - 1) ? '\\r\\n ' : '')}; return result == '' ? null : '\\r\\n ' + result", methodParameters()) ``` 返回值实现方式: ```java groovyScript("return \"${_1}\" == 'void' ? null : \"${_1}\"", methodReturnType()) ``` [](https://www.cnblogs.com/gscq073240/articles/16218924.html)6、效果图 ------------------------------------------------------------------ 创建方法,在方法上面写:/\*+模板名+Enter-->/\*\*+Enter IDEA格式的注释效果图: ![](https://oss.120120.top/hiro/2023/02/14/64eb5273-9415-4fc9-ab82-1230d61f908f.jpeg) JavaDoc格式的注释效果图: ![](https://oss.120120.top/hiro/2023/02/14/5cb22f08-ca6f-4b74-bb48-f29ba2e08cf4.jpeg) \-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  第二部分 \-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------   IDEA中设置注释模板主要分为两个部分,分别是创建java文件时类的注释和方法的注释。   这里为大家详细介绍一下方法,按MyEclipse的风格设置(MyEclipse的请看:**[MyEclipse中设置注释模板的方法](https://www.cnblogs.com/pcheng/p/8194749.html)**),大家可以根据自己的习惯生成自己喜欢的注释模板。效果如下:  ![](https://oss.120120.top/hiro/2023/02/14/d2888fd2-08f2-4223-be7a-07523d6666f8.jpeg) **一、设置类的注释模板** 1、选择File→Settings→Editor→File and Code Templates→Files→Class。可以看到创建Class时引入了一个参数"File Header.java"。对应的是Files旁边的Includes→File Header文件。 ![](https://oss.120120.top/hiro/2023/02/14/213d5095-1c02-4b86-8656-d7014dfc79ef.jpeg) 2、File Header里就是创建类时的注释模板,下面Description中有描述一些可以配置的参数,可以根据自己需要选用。 ![](https://oss.120120.top/hiro/2023/02/14/7cf8073d-aa70-4f3e-86e7-8ac7cf6f4a2b.jpeg) **二、设置方法的注释模板** 1、选择File→Settings→Editor→Live Templates。点击右边的加号,选择Template Group,创建一个分组。 ![](https://oss.120120.top/hiro/2023/02/14/6f3fdc46-f3dd-4dfc-b7f9-2e9115b2dffc.jpeg) 2、再点击加号,选择Live Template,创建一个模板。其中: Abbreviation:填模板的缩写,可以使用\*号作为代号,方便后面调用模板。 Options→Expand with:填注释模板的扩展快捷键,根据使用习惯,这里使用默认的Tab。 Template text:填写注释模板的内容。参数名使用${参数名}$的格式。**(注意:注释模板开头的/不要填写,原因可以看文章末尾的解释)** ![](https://oss.120120.top/hiro/2023/02/14/067553c8-17b5-46ff-b640-01cf84e68375.jpeg) 3、点击模板页面最下方的警告define,来设置将模板应用于哪些场景,选择Everywhere-->Java即可。(如果曾经修改过,则显示为change而不是define,如上图) ![](https://oss.120120.top/hiro/2023/02/14/3026bc1b-960e-4ad3-8c8a-874539c892c6.jpeg) 4、然后点击Edit variables,会读取刚刚在注释模板中的配置的参数${参数名}$。在Expression的下拉框中选择方法为其赋值。 ![](https://oss.120120.top/hiro/2023/02/14/bcc8b194-59e3-405b-b5a3-855733d3c016.jpeg) 5、参数赋值优化 (1)如果param参数使用默认的methodParameters()来获取方法参数值,其注释参数是在一行展示的,如下图。这里我们希望像MyEclipse中一样,一行一个参数的样式,可以通过脚本来实现。将以下脚本复制进Expression,可以得到文章开头效果图的样式: groovyScript("def result=''; def params=\\"${\_1}\\".replaceAll('\[\\\\\\\\\[|\\\\\\\\\]|\\\\\\\\s\]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {result+=' \* @param ' + params\[i\] + ((i < params.size() - 1) ? '\\\\r\\\\n' : '')}; return result", methodParameters()) ![](https://oss.120120.top/hiro/2023/02/14/9258cdf3-214b-4b43-a1b3-3f29915e5549.jpeg) (2)如果return参数使用默认的methodReturnType()来获取参数值,模板里使用了@link来跳转结果类型,那么当方法返回值为void时,注释会报错,如下图。可以通过脚本来避免,将上面模板中的@link参数去掉,将以下脚本复制进Expression: groovyScript("def result=\\"${\_1}\\"; if(result == \\"void\\"){return \\"\\";}else{return \\"{@link \\"+result+\\"}\\";}", methodReturnType()) ![](https://oss.120120.top/hiro/2023/02/14/9e240ede-c7c0-4560-bb73-93e8e5c00232.jpeg) 6、注释模板的调用。通过输入 / + \* + Tab键,即先输 /\* 再按Tab键,就可以调用模板。因为刚刚我们把\*被设置为模板的代号,Tab键设置为模板的扩展快捷键,也可以把Tab改为Enter键,更加还原MyEclipse。 **PS**:(1)注意,注释模板开头不要使用/,因为设置后虽然可以更便捷的使用 \* + Tab键,调用模板。但是会存在param为null的情况(原因暂时未知),如下图,需要在方法内调用才能获取参数,但这样还需要将注释复制到方法外反而使用不便。 ![](https://oss.120120.top/hiro/2023/02/14/45309c4e-8f27-44e1-9df7-73c2d2ea1daa.jpeg) (2)注释模板中的user参数是获取系统的用户(当然注释作者也可以直接写固定值,但是配置更有意思,哈哈),经常不是自己需要的作者名,可以在IDEA中进行配置。打开→IDEA的安装目录\\bin\\idea64.exe.vmoptions。在最下面增加一行-Duser.name=username。 其中username就是你希望为user参数的赋值。 (3)注释模板中的date参数是获取系统的时间及格式(即桌面右下角的时间及格式),而WIN10下系统时间格式是可以调整的。右键桌面右下角的系统时间→调整日期/时间→日期、时间和区域格式设置→更改数据格式→调整“短日期格式”。 本文转自 [https://www.cnblogs.com/gscq073240/articles/16218924.html](https://www.cnblogs.com/gscq073240/articles/16218924.html),如有侵权,请联系删除。
作者头像
admin
分享技术与生活
打赏作者

评论

暂无评论,快来抢沙发吧~