首页 > 解决方案 > 如何在 Jpa、RestController Spring Boot 中使用选定实体创建行

问题描述

我有 3 个实体 A、B、C,其中 C 将通过带有 @OneToOne 关系实体 A 和 @ManyToOne 实体 B 的 JSON 创建,如何使用 JSON 发送数据,我只需要发送实体 A 的 ID 或完整数据吗? B. 我也使关系可插入和可更新为假,因为它们不需要更新或创建,只需要在值列表中进行选择。

@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(...)
private Set<B> objB = new HashSet<B>();

@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(...)
private A objA;

我发布的 JSON,

{
  "name": "Test Store",
  "description": "Test Description",
  "objB": [
    {
      "id": 19
    }
  ],
  "objA": {
    "id": 1,
  }
}

如果我这样发送,则 objB 的 Object 为空,objA 的 JSON 解析错误。我该如何处理。什么是最好的方法。

标签: springspring-bootjpa

解决方案


您是否尝试过这样使用?

@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(...)
private List<B> objB;

推荐阅读