以另一个实体作为字段发布请求 - 使用 id 或传递完整对象?

问题描述 投票:0回答:0

我有以下实体

Client
,每个客户只能有一个
Trainer

@Entity
@Table(name = "Client")
public class Client {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;

@ManyToOne
private Trainer trainer;

// getters and setters

}

客户只能与现有培训师一起创建,即我不会通过一个新的教练来坚持。

我的帖子是否应该要求

dto
创建一个
client
例如如下,然后通过id获取
trainer
并添加到我的实体中进行持久化?

{
  "id": 123
  "trainerId": 456
}

我能想到的唯一其他选择是在发布请求中传递一个完整的现有培训师对象?

{
  "id": 123
  "trainer": {"id":456} // + other existing trainer fields
}
java rest post spring-data-jpa orm
© www.soinside.com 2019 - 2024. All rights reserved.