背景
本文意在将IDEA中的代码格式和注释格式进行统一化。
研发团队的成员的代码格式和注释格式统一化。
统一的代码格式和注释格式,能给代码阅读上带来极大的便利,给代码改动上提高极大的效率。
代码格式话模板配置(非必要配置,也可直接使用IDEA默认格式化即可)
- 下载阿里配置文件(eclipse-codestyle.xml),因为此文件是针对ecplice的,在IDEA中使用配置文件,需要安装Eclipse Code Formatter插件
- 配置代码格式,File->Settings->Other Settings->Eclipse Code Formatter进行idea代码格式配置:将代码格式化文件eclipse-codestyle.xml,配置到插件中:
IDEA代码注释模板配置
为了减少警告以及更好的集成统一API的文档第三方工具,我们严格按照java文档注释来配置相关的模板配置。
类注释模板配置
IDEA配置导航地址:settings->Editor->File and Code Templates->Files->class
类注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*
以及*
号之间的空格都要一一对应)
/**
* ${NAME} ${description}
* @author ${USER}
* @version ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
**/
public class ${NAME} {
}
接口注释模板配置
IDEA配置导航地址:settings->Editor->File and Code Templates->Files->Interface
接口注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*
以及*
号之间的空格都要一一对应)
/**
* ${NAME} ${description}
* @author ${USER}
* @version ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
**/
public interface ${NAME} {
}
枚举注释模板配置
IDEA配置导航地址:settings->Editor->File and Code Templates->Files->Enum
枚举注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*
以及*
号之间的空格都要一一对应)
/**
* ${NAME} ${description}
* @author ${USER}
* @version ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
**/
public enum ${NAME} {
}
注解注释模板配置
注解注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*
以及*
号之间的空格都要一一对应)
/**
* ${NAME} ${description}
* @author ${USER}
* @version ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
**/
public @interface ${NAME} {
}
方法注释模板配置
IDEA配置导航地址:settings->Editor->Live Templates
方法注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*
以及*
号之间的空格都要一一对应)
**
* TODO
$param$
* @return $return$
* @author Arnold
* @throws
*
**/
Template Variables具体参数对应表达式
Name | Expression |
time |
|
methodName |
|
param | 见下面的引用 |
return |
|
上表的param表达式: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())
在方法前面输入/m
即可看到方法注释自动填充
注意点
严格按照上述说法配置任然可能导致问题
- 注释模板中的
*
号无法对齐成一条直线,你可以自己手动调整确保注释中的*
号在一条直线上,好看美观 - Template Variables中param 无法成功引出参数具体的值
最终以下图展示的为成功配置的标准(由于这个之前模板做了多次调整,可能下图展示的效果和上述模板的不一致,最终都以上述最新的注释模板配置为主)
Class注释成功标准图示
Interface注释成功标准图示
Enum注释成功标准图示
@interface注释成功标准图示
方法注释成功标准图示
常用自定义快捷键
快速新建Class
Template text 模板:$Clazz$ $obj$ = new $Clazz$($END$);
验证是否成功
快速集合判空(collection is empty)
Template text 模板:if(CollUtil.isEmpty($VAR$)){ $END$ }
快速集合非空(collection is not empty)
Template text 模板:if(CollUtil.isNotEmpty($VAR$)){ $END$ }
快速String非空(string is not empty)
Template text 模板:if(StrUtil.isNotEmpty($VAR$)){ $END$ }
快速String非空格(string is not blank)
Template text 模板:if(StrUtil.isNotBlank($VAR$)){ $END$ }