Eclipse中setter/getter方法自动添加属性注释

修改eclipse的setter/getter生成的源码(eclipse3.7,可跳过此步)

eclipse/plugins/org.eclipse.jdt.ui_*.jar为以下版本的也可跳过此步
3.8.2.v20130107-165834

  1. 用git下载源码git://git.eclipse.org/gitroot/jdt/eclipse.jdt.ui.git

  2. 将版本历史切换到eclipse/plugins/org.eclipse.jdt.ui_*.jar包打包之前的最新版本

  3. 将其中的四个项目(org.eclipse.jdt.core.manipulation、org.eclipse.jdt.ui、 org.eclipse.ltk.core.refactoring、org.eclipse.ltk.ui.refactoring)导入 workspace

  4. 切换到项目org.eclipse.jdt.ui,配置Build Path,切换到Libraries,点击Add External JARs,找到eclipse/plugins目录,找到其中的org.eclipse.jdt.core_*.jar和 org.eclipse.jface.text_*.jar添加到项目依赖包中。(此时项目可能依然有类报错,没关系,只要我们要改的类不报错就行了)

  5. 然后打开core extension源码目录,找到其中的org.eclipse.jdt.internal.corext.codemanipulation.GetterSetterUtil类

搜索关键字"CodeGeneration.getSetterComment"和"CodeGeneration.getGetterComment",分别在这两个查找到的内容下面一行中加入以下代码:

ISourceRange sr= field.getJavadocRange();
if (null != sr) {
        String filedComment= field.getSource();
        filedComment= filedComment.substring(0, sr.getLength())
                                    .replaceAll("[\n,\r,*,/,\t]", "")
                                    .trim(); //$NON-NLS-1$ //$NON-NLS-2$        
    comment= comment.replace("#{bare_field_comment}", filedComment); //$NON-NLS-1$
}

  1. 修改完GetterSetterUtil后保存,之后到项目的bin目录下找到该类编译后的class文件复制出来。

已修改好的eclipse3.7中的GetterSetterUtil类

GetterSetterUtil.class

已修改好的3.8.2.v20130107-165834版本的GetterSetterUtil类

GetterSetterUtil$20130107-165834.class

已修改好的3.9.50.v20140317-1811版本的GetterSetterUtil类

GetterSetterUtil$3.9.50.v20140317-1811.class

已修改好的3.10.0.v20140604-1403版本的GetterSetterUtil类

GetterSetterUtil$3.10.0.v20140604-1403.class

注:下载后,将文件名修改为GetterSetterUtil.class即可使用

将修改的好的GetterSetterUtil导入Eclipse

  1. 导入前关闭eclipse

  2. 用winrar或类似解压缩软件打开eclipse/plugins/org.eclipse.jdt.ui_*.jar,找到 org.eclipse.jdt.internal.corext.codemanipulation.GetterSetterUtil类,将复制的 class拖入替换

  3. 启动eclipse

导入最新的代码模板

模板下载及导入方法参看 Eclipse for Jee的安装与配置

使用功能

定义属性如:

private String uuserid


在属性上方输入代码"/**",然后回车,添加相关注释如,用户ID

/** * 用户ID */
private String uuserid


使 用快捷键 shift+alt+s 打开源码控制面板,选择Generate Getters and Setters...,然后勾选要生成的get/set方法,Insertion point选择Last member(意为将方法生成在类的末尾),勾选Generate method comments,点击OK
即可在类的最后生成代码如下:

/** * 获取 用户ID 
    * @return uuserid 
*/
public String getUuserid() {    
    return uuserid;
}

/** * 设置 用户ID 
    * @param uuserid 用户ID 
*/
public void setUuserid(String uuserid) {    
    this.uuserid = uuserid;
}


你可能感兴趣的:(Eclipse中setter/getter方法自动添加属性注释)