我将Spring Boot用作后端框架,并且我有一个PERSON
实体,该实体与GENDER
实体具有一对一的关系。
我在@RepositoryRestResource
和PersonRepository
中使用GenderRepository
。
GENDER
表中已经充满了MALE和FEMALE的两个记录,而我有一个角形,可以创建一个新的PERSON。
有一个角形式的性别列表,其中包含GenderRepository
(男性/女性)中获得的两个项目。如何将性别ID放入POST请求正文的JSON中以创建新的Person
。
我看到大多数人都使用text / uri-list更新现有记录,但是我想在创建不更新时进行设置。
答案 0 :(得分:0)
您可以通过提供指向性别实体的链接来实现。
人员实体
@Entity
public class Person {
@Id
@GeneratedValue
private Long id;
@OneToOne
private Gender gender;
//Other columns and getter/setters are removed for brevity
}
性别实体
@Entity
public class Gender {
@Id
@GeneratedValue
private Long id;
@Column
private String gender;
}
以下对localhost:8080 / api / persons的POST请求,其中Content-Type
标头设置为application/json
,将创建一个新的Person实体,并将其性别设置为ID为1的Gender。
{
"name": "Mahsum",
"surname": "Demir",
"gender": "http://localhost:8080/api/genders/1"
}