【发布时间】:2023-04-08 02:42:01
【问题描述】:
我有一个父类和一个子类,我正在使用@SuperBuilder 来构建子对象,但似乎它根本没有初始化。
我的父类如下所示:
@Getter
@Setter
@Component
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
@SuperBuilder
public class MessageResponse {
String responseMessage;
}
我的子类如下所示:
@Getter
@Setter
@Component
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
@SuperBuilder
public class ListResponse extends MessageResponse {
List<Item> itemList;
int itemCount;
}
其中 Item 是 Serializable 类。
最初ListResponse 是
itemList = null
itemCount = 0
responseMessage = null
当我尝试使用 builder 构建 ListResponse 时,它根本不会更改 ListResponse 对象。我正在尝试构建为
//listResponse is @Autowired from Spring and is initially as shown above.
List<Item> itemList = getItems(); // It returns a list of 15 items, i have checked in debugger, It does.
listResponse.builder()
.bucketList(itemList)
.responseMessage("Item List.")
.bucketCount(itemList.size())
.build();
即使在执行.build() 之后,这个listResponse 对象的内容仍然是(null, 0 , null)。
我尝试搜索有关@SuperBuilder 和@Builder 的其他参考资料,但没有得到任何结果。有人可以指出这里出了什么问题吗?
【问题讨论】:
-
@altarbza 谢谢,但你能先帮忙解决一下手头的问题吗?
标签: java spring lombok intellij-lombok-plugin