研发团队中的人大多刚工作一年,每次review代码都是一件头痛得事情,代码的注释也很乱,所以我决定,让他们们是用注释模板,和格式化模板,来增强代码的统一性和可读性。本篇文章介绍如何设置 Code Template,具体步骤如下:
一、设置步骤
1、打开Window->Preferences->Java->Code Style->Code Templates
2、点击"Import",导入模板codetemplates.xml文件(后续给出样例)
二、设置详解
1、上图中Comments下是具体的一下子项,可以根据自己的需求,可以只对一些子项设置,下面是子项设置的样例。
①:文件头(Files)注释标签
/**
* @Title: ${file_name}
* @Package ${package_name}
* @Description: ${todo}(用一句话描述该文件做什么)
* @author A18ccms A18ccms_gmail_com
* @date ${date} ${time}
* @version V1.0
*/
②:类型(Types)注释标签(类的注释):
/**
* @ClassName: ${type_name}
* @Description: ${todo}(这里用一句话描述这个类的作用)
* @author A18ccms a18ccms_gmail_com
* @date ${date} ${time}
*
* ${tags}
*/
③:字段(Fields)注释标签:
/**
* @Fields ${field} : ${todo}(用一句话描述这个变量表示什么)
*/
④:构造函数标签:
/**
* <p>Title: </p>
* <p>Description: </p>
* ${tags}
*/
⑥:方法(Constructor & Methods)标签:
/**
* @Title: ${enclosing_method}
* @Description: ${todo}(这里用一句话描述这个方法的作用)
* @param ${tags} 设定文件
* @return ${return_type} 返回类型
* @throws
*/
⑦:覆盖方法(Overriding Methods)标签:
/* (非 Javadoc)
* <p>Title: ${enclosing_method}</p>
* <p>Description: </p>
* ${tags}
* ${see_to_overridden}
*/
⑧:代表方法(Delegate Methods)标签:
/**
* ${tags}
* ${see_to_target}
*/
⑨:getter方法标签:
/**
* @return ${bare_field_name}
*/
⑩:setter方法标签:
/**
* @param ${param} 要设置的 ${bare_field_name}
*/
2、codetemplates.xml模板样例如下:
<?xml version="1.0" encoding="UTF-8"?>
<templates>
<template autoinsert="false" context="filecomment_context" deleted="false"
description="Comment for created Java files"
enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.filecomment" name="filecomment">
/**
* @Title: ${file_name}
* @Package ${package_name}
* @Description: ${todo}
* Copyright: Copyright (c) ${year}
* Company:上海叁陆伍网络科技
*
* @author Comsys-${user}
* @date ${date} ${time}
* @version V1.0
*/
</template>
<template autoinsert="false" context="typecomment_context" deleted="false"
description="Comment for created types" enabled="true"
id="org.eclipse.jdt.ui.text.codetemplates.typecomment" name="typecomment">
/**
* @ClassName: ${type_name}
* @Description: ${todo}(这里用一句话描述这个类的作用)
* @author ${user}
* @date ${date}
*
* ${tags}
*/
</template>
<template autoinsert="false" context="fieldcomment_context" deleted="false"
description="Comment for fields" enabled="true"
id="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name="fieldcomment">
/**
* @Fields ${field} : ${todo}(用一句话描述这个变量表示什么)
*/
</template>
<template autoinsert="false" context="constructorcomment_context" deleted="false"
description="Comment for created constructors" enabled="true"
id="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name="constructorcomment">
/**
* 创建一个新的实例 ${enclosing_type}.
*
* ${tags}
*/
</template>
<template autoinsert="false" context="methodcomment_context" deleted="false"
description="Comment for non-overriding methods" enabled="true"
id="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name="methodcomment">
/**
* @Title: ${enclosing_method}
* @Description: ${todo}(这里用一句话描述这个方法的作用)
* @param ${tags} 参数
* @return ${return_type} 返回类型
* @throws
*/
</template>
<template autoinsert="true" context="overridecomment_context" deleted="false"
description="Comment for overriding methods" enabled="true"
id="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name="overridecomment">
/* (非 Javadoc)
*
<p>Title: ${enclosing_method}</p>
*
<p>Description: </p>
* ${tags}
* ${see_to_overridden}
*/
</template>
<template autoinsert="true" context="delegatecomment_context" deleted="false"
description="Comment for delegate methods" enabled="true"
id="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name="delegatecomment">
/**
* ${tags}
* ${see_to_target}
*/
</template>
<template autoinsert="false" context="gettercomment_context" deleted="false"
description="Comment for getter method" enabled="true"
id="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name="gettercomment">
/**
* @return ${bare_field_name}
*/
</template>
<template autoinsert="true" context="settercomment_context" deleted="false"
description="Comment for setter method" enabled="true"
id="org.eclipse.jdt.ui.text.codetemplates.settercomment" name="settercomment">
/**
* @param ${param} the ${bare_field_name} to set
*/
</template>
</templates>
关注我的公众号,精彩内容不能错过