【发布时间】:2018-12-20 14:39:03
【问题描述】:
试图保存一对多 JPA 关系。我写了一个自定义控制器。我只得到giftSet 中的第一个id,而不是所有的id。我已经简化了代码。
我的帖子请求-
{
"name": "Project 7",
"giftSet": [
{
"id": "1"
},
{
"id":"33"
}
]
}
class Holiday{
private String name;
private Set<GiftConfig> giftSets;
}
class GiftSet {
private Integer id;
private Holiday holiday;
}
class GiftConfig {
private Integer id;
private String name;
}
@RequestMapping(method = RequestMethod.POST, value="/api/saveholiday")
public ResponseEntity<Map<String, Holiday>> saveHoliday(@RequestBody Holiday holiday) {
System.out.println(holiday);
return null;
}
首先,我添加了多个 GiftConfig。之后,在创建 Holiday 时,我还添加了 GiftSet 的详细信息。
在调试模式下,我在 giftSet 中只看到 id 1 而不是 id 1 和 33。 注意 - 更改设置为列表不是一种选择。
【问题讨论】:
-
你能发布完整的
GiftSet类吗?有equals()/hashCode()实现吗? -
没有 equals()/hashCode() 实现。我将 Lombok 用于 Getter 和 Setter。
-
我更新了代码。非常抱歉,我忘了加一门课。
-
如果您使用 Lombok,
GiftSet类是否使用任何 Lombok 注释进行注释? -
@Kedar 如果您使用的是 lambok,则需要包含您的 lambok 注释。例如。
@Data,或@Setters,@Getters。在我的回答中,我确实包括了它们并且一切正常。新年快乐!
标签: java json spring-boot jackson