有没有办法使用自动构建器为Eclipse
中的类创建构建器(Joshua Bloch's Builder Pattern)?例如菜单中的选项,插件或其他内容。我在“ Refactor
”下找不到任何内容。
答案 0 :(得分:27)
您可能需要查看lombok注释以生成没有样板代码的构建器。例如:
@Builder
public class MyPojo {
private String name;
}
MyPojoBuilder.builder().name("yourame").build();
限制是这似乎不适用于抽象类。
答案 1 :(得分:18)
也许我迟到了。
Eclipse本身并没有提供生成代码来支持构建器模式的方法。但是,它可以通过插件进行扩展,以增强功能。
我使用这个插件:
答案 2 :(得分:14)
我目前在Eclipse Neon.1a版本(4.6.1)中使用 Spark Builder Generator ,效果很好。
答案 3 :(得分:2)
尝试https://github.com/vojtek/write-it-once
package ${cls.package.name};
public class ${cls.shortName}Builder {
public static ${cls.name}Builder builder() {
return new ${cls.name}Builder();
}
<% for(field in cls.fields) {%>
private ${field.type.name} ${field.name};
<% } %>
<% for(field in cls.fields) {%>
public ${cls.name}Builder ${field.name}(${field.type.name} ${field.name}) {
this.${field.name} = ${field.name};
return this;
}
<% } %>
public ${cls.name} build() {
final ${cls.name} data = new ${cls.name}();
<% for(field in cls.fields) {%>
data.${field.setter.name}(this.${field.name});
<% } %>
return data;
}
}
答案 4 :(得分:1)
您可以添加自己的模板窗口 - &gt;偏好 - &gt; java - &gt;编辑 - &gt;模板,这将通过内容提案激活,但不会通过重构操作
激活