IDEA设置生成带注释的getter和setter解决方案 (图文教程)

近日在研究重构代码的时候有用到idea的很多插件,好比CheckStyle,同时下载了阿里的开发规约,受到很多启发。api

规约中会要求全部的方法都有Javadoc,可是一般咱们用idea默认生成的getter和setter方法是不带注释的,固然,咱们一样能够设置idea像MyEclipse同样生成带有Javadoc的模板,具体解决方案以下:ide

 

好比咱们有这么一个pojo类:this

/**
 * 人类.
 * @author eric
 */
public final class People {

    /**
     * 姓名.
     */
    private String name;
    /**
     * 年龄.
     */
    private Integer age;

}

这个时候咱们按下 Alt + Insert (Windows),或者 Command + N (MacOS)来打开生成窗口:idea

这里咱们选择Getter and Setter。spa

打开以下窗口:插件

咱们点击如图箭头所示的地方,打开以下视图:3d

 

而后咱们新建一个Template,点击图中的 "+" 号,而后输入名称(固然你能够起个本身喜欢的名称)code

点击OK。以后在编辑区域复制粘贴以下代码:blog

/**
 * Gets the value of $field.name.
* *
@return the value of $field.name */ public ## #if($field.modifierStatic) static ## #end $field.type ## #set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($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; }

 

图示:ip

 

 

完毕后点击OK。

 

Setter的配置同上一致,咱们只需将编辑区内的代码改下(固然Template Name也能够改下:D):

/**
 * Sets the $field.name.
* * <p>You can use get$StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project)))() to get the value of $field.name</p> *

* @param $field.name $field.name
*/ #set($paramName = $helper.getParamName($field, $project)) public ## #if($field.modifierStatic) static ## #end void set$StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project)))($field.type $paramName) { #if ($field.name == $paramName) #if (!$field.modifierStatic) this.## #else $classname.## #end #end $field.name = $paramName; }

 

下面就让咱们来看下成果:

在这里注意要选择咱们刚配置好的Template,而不是Default。

点击OK。

到这里算是大功告成了。

 

固然,你也能够参考个人写法来自定义生成的注释的风格和样式,仅供参考。

相关文章
相关标签/搜索