首页 > 代码库 > eclipse 自己主动为getter和setter加入中文凝视

eclipse 自己主动为getter和setter加入中文凝视

在我们使用eclipse进行开发的时候经常会使用到eclipse自己主动生成getter和setter的功能,然后大多情况下eclipse为我们生成的getter和setter都是无法在项目中使用的。还须要我们自己手动改动。

比方以下这个类。我使用了eclipse的自己主动生成getter和setter的功能而且选择了加入凝视。终于的类为例如以下

public class User {
	//username
	private String name;

	/**
	 * @return the name
	 */
	public String getName() {
		return name;
	}

	/**
	 * @param name the name to set
	 */
	public void setName(String name) {
		this.name = name;
	}
	
}

可是我们想要的不是这样一个凝视。希望可以产生例如以下的代码凝视

public class User {
	// username
	private String name;

	/**
	 * 返回 username
	 * 
	 * @return username
	 */
	public String getName() {
		return name;
	}

	/**
	 * 设置 username
	 * 
	 * @param name
	 *            username
	 */
	public void setName(String name) {
		this.name = name;
	}

}

怎样来做呢?

如今我就来说明一下我的改动方式。

1、第一步是查找到eclipse自己主动生成getter和setter的类文件。我给大家找好了在eclipse\plugins\org.eclipse.jdt.ui_xxxxxxxx.jar\org\eclipse\jdt\internal\corext\codemanipulation\GetterSetterUtil.class

2、我们改动这个class的源代码然后编译替换。

这个class源代码一般在相应的eclipse\plugins\org.eclipse.jdt.ui.source__xxxxxxxx.jar\org\eclipse\jdt\internal\corext\codemanipulation\GetterSetterUtil.java

我的eclipse版本号为Version: 4.3.1

我把已经改动好和编译好的文件传上来。

在你们使用这个的时候记得先把原始jar进行备份。以免悲剧。

关于class的替换过程我还是简单说下。免得有的同学不明确。

1、直接用压缩文件打开eclipse\plugins\org.eclipse.jdt.ui_xxxxxxxx.jar

2、找到org\eclipse\jdt\internal\corext\codemanipulation\GetterSetterUtil.class

3、将GetterSetterUtil.class替换为我们自己改动好的GetterSetterUtil.class(eclipse没有执行的状态下才干替换)

用法

1、在eclipse中window-》preferences->java->code style->code templates

2、找到comments

3、 展开找到getters点击Edit输入例如以下内容

/**
 * 返回 bare_field_comment
 * 
 * @return bare_field_comment
*/

4、找到setters 点击edit 输入例如以下内容

/**
 * 设置 bare_field_comment
 * 
 * @param ${param}
 *            bare_field_comment
 */

5、保存


bare_field_comment :是用我们属性上面的这个凝视来替换。

假设属性上面没用凝视的话。那么会直接输出bare_field_comment

使用

public class User {
	// username
	private String name;
}


在我们自己主动生成getter和setter的时候相同选中 generate method comments 假设属性上面有单行凝视那么这个凝视就会被我们使用到。

终于生成效果例如以下

public class User {
	// username
	private String name;

	/**
	 * 返回 username
	 * 
	 * @return username
	 */
	public String getName() {
		return name;
	}

	/**
	 * 设置 username
	 * 
	 * @param name
	 *            username
	 */
	public void setName(String name) {
		this.name = name;
	}
}


注意的是

多行凝视是不被识别的。这个是有益屏蔽掉的。

下载地址

http://download.csdn.net/detail/kongguoan/7694553




eclipse 自己主动为getter和setter加入中文凝视