如何手动附加到响应数据包Lombok



我是使用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();
}

最新更新