背景说明
引入Lombok改造统一返回值模板的时候,打算放弃new 对象的模式,采用了Lombok的Builder的构建者模式,但是构建时候无法带上泛型
结构定义
@Data
@Builder
public class MsgDto<T> {
private T body;
private Boolean isSuccess;
}
解决方案
对象构建
TimelineInfo timelineInfo = reportService.timeline(issueInfo);
MsgDto<TimelineInfo> result = MsgDto.<TimelineInfo>builder().isSuccess(true).body(timelineInfo).build();
方法定义
public class MsgDto<T> {
private T body;
private Boolean isSuccess;
public static <T> MsgDto<T> success(T body) {
return MsgDto.<T>builder().isSuccess(true).body(body).build();
}
}
网友评论