IDEA设置⽣成带注释的getter和setter解决⽅案(图⽂教程)近⽇在研究重构代码的时候有⽤到idea的不少插件,⽐如CheckStyle,同时下载了阿⾥的开发规约,受到不少启发。
规约中会要求所有的⽅法都有Javadoc,但是通常我们⽤idea默认⽣成的getter和setter⽅法是不带注释的,当然,我们同样可以设置idea像MyEclipse⼀样⽣成带有Javadoc的模板,具体解决⽅案如下:
⽐如我们有这么⼀个pojo类:
/**
* ⼈类.
* @author eric
*/
public final class People {
/**
* 姓名.
*/
private String name;
/**
* 年龄.
*/
private Integer age;
}
这个时候我们按下 Alt + Insert (Windows),或者 Command + N (MacOS)来打开⽣成窗⼝:
这⾥我们选择Getter and Setter。
打开如下窗⼝:
我们点击如图箭头所⽰的地⽅,打开如下视图:
然后我们新建⼀个Template,点击图中的 "+" 号,然后输⼊名称(当然你可以起个⾃⼰喜欢的名称)
点击OK。之后在编辑区域复制粘贴如下代码:
/**
* Gets the value of $field.name
* @return the value of $field.name
*/
public ##
#if($difierStatic)
static ##
#end
$pe ##
#set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($PropertyName($field, $project)))) #if ($field.boolean && $field.primitive)
#if ($StringUtil.startsWithIgnoreCase($name, 'is'))
#set($name = $StringUtil.decapitalize($name))
#else
is##
#end
#else
get##
#end
${name}() {
return $field.name;
param name}
图⽰:
完毕后点击OK。
Setter的配置同上⼀致,我们只需将编辑区内的代码改下(当然Template Name也可以改下:D):
/**
* Sets the $field.name
* <p>You can use get$StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($PropertyName($field, $project)))() to get the value of $field.name</p>
* @param $field.name $field.name
*/
#set($paramName = $ParamName($field, $project))
public ##
#if($difierStatic)
static ##
#end
void set$StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($PropertyName($field, $project)))($pe $paramName) {
#if ($field.name == $paramName)
#if (!$difierStatic)
this.##
#else
$classname.##
#end
#end
$field.name = $paramName;
}
下⾯就让我们来看下成果:
在这⾥注意要选择我们刚配置好的Template,⽽不是Default。
点击OK。
到这⾥算是⼤功告成了。
当然,你也可以参考我的写法来⾃定义⽣成的注释的风格和样式,仅供参考。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。