我对Spring Rest API有点陌生。我有两个具有单向多对一关系的实体。
@Entity
public class Users{
@Id @Column(name = "user_id") @JsonProperty("userId")
private int id;
@ManyToOne @JoinColumn("city_id")
private City city;
// other fields, getters, setters
}
@Entity
public class City{
@Id @Column(name = "city_id") @JsonProperty("cityId")
private int id;
private String name;
// other fields, getters, setters
}
假设我在城市表中已经有一些城市。当我想使用http post方法添加城市ID为2的新用户时,我必须执行以下操作:
{
"userId": 1,
"city": {
"cityId": 2
}
}
如您所见,我必须先将cityId
实体内的city
分组。没有分组怎么办?像这样:
{
"userId": 1,
"cityId": 2
}
答案 0 :(得分:0)
您可以使用@JsonUnwrapped
link
用于指示应序列化属性的注释 “解开”;也就是说,如果将其序列化为JSON对象,则其 属性改为包含为其包含的属性 对象。
示例代码:
@Entity
public class Users{
@Id @Column(name = "user_id") @JsonProperty("userId")
private int id;
@JsonUnwrapped
@ManyToOne @JoinColumn("city_id")
private City city;
// other fields, getters, setters
}