IDEA类和方法注释模板设置-保姆教程_idea设置方法注释模板
在讲解怎么设置类和方法注释模板前,先简单介绍下Javadoc 标准,因为注释规范,最终和Javadoc 标准契合,效果最好,不仅方便后续出接口文档描述,也是业界的统一标准,更易于接受。
目录
Javadoc 标准标签列表
类注释设置
方法注释设置
Javadoc 标准标签列表
标签名
用途说明
@author
指定类、接口或方法的作者
@version
指定类、接口的版本信息
@since
表示该类或方法从哪个版本开始存在(一般就记录时间)
@see
添加一个“参见”链接,可以是其他类、方法或 URL
@param
描述方法参数的含义
@return
描述方法返回值的意义
@throws/@exception
描述方法可能抛出的异常
@deprecated
标记类、方法或字段已过时,建议使用替代项
@link
在注释中插入对其他类、方法或字段的内联链接(常用于详细说明中)
@code
将文本以代码格式展示,不会被解析为 HTML 或 Javadoc 标签
@serial
用于描述序列化字段的行为(主要用于 Serializable 类)
@serialField
用于描述序列化对象的字段(通常在 writeObject/readObject 方法中使用)
@serialData
描述写入流的数据(通常在 writeObject 方法中使用)
(1)@BelongsProject:当前项目的名称(可选,笔者自定的所属项目标签)
(2)@BelongsPackage:当前包的名称(可选,笔者自定的所属包标签)
类注释设置
设置步骤:File-->settings-->Editor-->File and Code Templates-->Files
复制下面的规则模板即可:(一般去掉了标签后面的:)
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != \"\")package ${PACKAGE_NAME};#end#parse(\"File Header.java\")/*** TODO:功能描述*@author Tom*@version 1.0*@since ${YEAR}-${MONTH}-${DAY} ${HOUR}:${MINUTE}*@BelongsProject ${PROJECT_NAME}*@BelongsPackage ${PACKAGE_NAME}*/public class ${NAME} {}
效果如下:每次创建新类后,修改作者和功能描述说明即可
/** * TODO:功能描述 * * @author Tom * @version 1.0 * @since 2022-07-03 15:37 * @BelongsProject tome * @BelongsPackage com.ys.soft.tome.controller */public class ControllerTest {}
方法注释设置
1、创建模板
IDEA还没有智能到自动为我们创建方法注释,这就是要我们手动为方法添加注释,我们的习惯是 /**+Enter,这里我们也按照这种习惯来设置IDEA的方法注释
1、File-->Settings-->Editor-->Live Templates
(1)新建组:命名为methodGroup
(2)新建模板:选中你刚才创建的组,然后右上角新建模板,命名为*
因为IDEA生成注释的默认方式是:/*+模板名+快捷键(比如若设置模板名为add快捷键用Tab,则生成方式为: /*add+Tab),如果不采用这样的生成方式IDEA中没有内容的方法将不可用,例如获取方法参数的methodParameters()、获取方法返回值的methodReturnType()
2、设置模板内容-IDEA格式模板
注意第一行,只有一个*而不是/*
在设置参数名时必须用${参数名}$的方式,否则第五步中读取不到你设置的参数名
直接复制下面的模板代码:(标签后:已经去掉)
* * TODO:方法功能描述 * @author Tom * @since $date$ $time$ * @param $param$ * @return $return$ **/
4、设置模板应用场景
点击模板页面最下方的警告,来设置将模板应用于那些场景,一般选择EveryWhere-->Java即可
(如果曾经修改过,则显示为change而不是define)
第一次是Define,如下:
按下面的图片勾选Java相关选项:直接全选即可
5、设置参数
把右侧的Expand with:改为Enter ;
PS:第4步和第5步顺序不可颠倒,否则第5步将获取不到方法
然后选择右侧的Edit variables按钮
1、IDEA格式的模板只需要为每个参数选择对应的方法即可:
方法名:date()time()methodParameters()methodReturnType()
2、设置成功后点击OK,返回项目新建一个方法,写完入参和返回值以后,在方法上面:
敲出:/** 回车
5、JavaDoc格式
该格式和IDEA格式略有不同:(@param @return)
(1)返回上面第二步中的格式设置:输入下面代码(注意格式)
* * TODO:方法功能描述 * @author Tom * @since $date$ $time$ $param$ $return$ **/
(2)参数设置(JavaDoc格式的需要自定义参数以及返回值的实现方式)
获取参数实现方式:
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())
返回值实现方式:
groovyScript(\"return \\\"${_1}\\\" == \'void\' ? null : \'\\\\r\\\\n * @return \' + \\\"${_1}\\\"\", methodReturnType())
如果返回值不想有包路径,可以使用下面这个参数:
groovyScript(\"def result=\'\'; def params=\\\"${_1}\\\".replaceAll(\'[\\\\\\\\[|\\\\\\\\]|\\\\\\\\s]\', \'\').split(\'<\').toList(); for(i = 0; i < params.size(); i++) {if(i!=0){result+=\'<\';}; def p1=params[i].split(\',\').toList(); for(i2 = 0; i2 < p1.size(); i2++) { def p2=p1[i2].split(\'\\\\\\\\.\').toList(); result+=p2[p2.size()-1]; if(i2!=p1.size()-1){result+=\',\'} } ; }; return result\", methodReturnType())
(3)设置成功后点击OK,返回项目新建一个方法,写完入参和返回值以后,在方法上面:
敲出:/** 回车
然后会显示:(注意param参数)