IDEA设置生成带注释的getter和setter的图文教程

 更新时间:2018年05月17日 12:05:02   作者:陈先生丶  
通常我们用idea默认生成的getter和setter方法是不带注释的,当然,我们同样可以设置idea像MyEclipse一样生成带有Javadoc的模板,具体设置方法,大家参考下本文

近日在研究重构代码的时候有用到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($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;
}

 完毕后点击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。

到这里算是大功告成了。

总结

以上所述是小编给大家介绍的IDEA设置生成带注释的getter和setter的图文教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • springboot 启动时初始化数据库的步骤

    springboot 启动时初始化数据库的步骤

    这篇文章主要介绍了springboot 启动时初始化数据库的步骤,帮助大家更好的理解和使用springboot框架,感兴趣的朋友可以了解下
    2021-01-01
  • Java源码解析之接口List

    Java源码解析之接口List

    今天带大家复习Java基础的一些知识点,对接口List进行了详细的解析,对正在学习Java的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-05-05
  • JAVA中字符串如何与整型数字相加

    JAVA中字符串如何与整型数字相加

    这篇文章主要介绍了JAVA中字符串如何与整型数字相加,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • SpringBoot如何手写一个starter并使用这个starter详解

    SpringBoot如何手写一个starter并使用这个starter详解

    starter是SpringBoot中的一个新发明,它有效的降低了项目开发过程的复杂程度,对于简化开发操作有着非常好的效果,下面这篇文章主要给大家介绍了关于SpringBoot如何手写一个starter并使用这个starter的相关资料,需要的朋友可以参考下
    2022-12-12
  • idea新建springboot项目pom文件报错问题及解决

    idea新建springboot项目pom文件报错问题及解决

    这篇文章主要介绍了idea新建springboot项目pom文件报错问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • 一文讲通Java为什么不支持多继承原理

    一文讲通Java为什么不支持多继承原理

    这篇文章主要为大家介绍了java为什么不支持多继承原理详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • Java判断绝对值的方法总结

    Java判断绝对值的方法总结

    在本文中作者为大家分享了两种Java判断绝对值的方法,对此有兴趣的朋友可以和小编一起学习下。
    2018-02-02
  • 为什么不建议使用Java自定义Object作为HashMap的key

    为什么不建议使用Java自定义Object作为HashMap的key

    这篇文章主要介绍了为什么不建议使用Java自定义Object作为HashMap的key,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-06-06
  • ByteArrayInputStream简介和使用_动力节点Java学院整理

    ByteArrayInputStream简介和使用_动力节点Java学院整理

    ByteArrayInputStream 是字节数组输入流。它继承于InputStream。这篇文章主要介绍了ByteArrayInputStream简介和使用_动力节点Java学院整理,需要的朋友可以参考下
    2017-05-05
  • @NotEmpty、@NotBlank、@NotNull的区别

    @NotEmpty、@NotBlank、@NotNull的区别

    这篇文章主要介绍了@NotEmpty、@NotBlank、@NotNull的区别,需要的朋友可以参考下
    2016-09-09

最新评论