我是使用Java中使用Lombok库的新手。我有一个要补充我的回答的项目列表:
for(Inbox msg:messages) {
resp = resp.builder().name(userName).subject(msg.getTitle()).build();
serverHandle.getLog().info(resp.toString());
}
但是,这并不附加条目,它只是覆盖现有记录。有没有办法添加响应?
不幸的是,这是不可能的。
假设这是您的response class
:
@Getter
@Setter
@Builder
public class Response {
private String name;
private String subject;
}
然后 lombok
preduce you this class
:
public class Response {
private String name;
private String subject;
Response(String name, String subject) {
this.name = name;
this.subject = subject;
}
public static Response.ResponseBuilder builder() {
return new Response.ResponseBuilder();
}
public String getName() {
return this.name;
}
public String getSubject() {
return this.subject;
}
public void setName(String name) {
this.name = name;
}
public void setSubject(String subject) {
this.subject = subject;
}
public static class ResponseBuilder {
private String name;
private String subject;
ResponseBuilder() {
}
public Response.ResponseBuilder name(String name) {
this.name = name;
return this;
}
public Response.ResponseBuilder subject(String subject) {
this.subject = subject;
return this;
}
public Response build() {
return new Response(this.name, this.subject);
}
public String toString() {
return "Response.ResponseBuilder(name=" + this.name + ", subject=" + this.subject + ")";
}
}
}
您可以看到每个builder
,它正在创建一个新的ResponseBuilder
public static Response.ResponseBuilder builder() {
return new Response.ResponseBuilder();
}