[英]Spring boot. How to put array to json
例如,我想在我的Spring启动应用程序中得到这样的JSON作为响应:
{
"firstName": "John",
"lastName": "Doe",
"phoneNumbers": [
"453 123-1234",
"753 123-4567"
]
}
我有@Entity注释的类:
@Entity
public class MyEntity {
String firstName;
String lastNAme;
String phoneNumbers;
//constructors, getters and setters...
}
然后,如果我向端点发送请求,则会收到以下响应:
{
"firstName": "John",
"lastName": "Doe",
"phoneNumbers": "453 123-1234, 753 123-4567"
}
其中phoneNumbers只是一个字符串,而不是一个数组。 我尝试了将phoneNumbers字段设计为数组或集合的不同变体,并使用了批注,例如@ElementCollection,但在请求后仅返回异常或错误消息。 如何解决这个问题?
您需要一个电话号码清单
public class MyEntity {
private String firstName;
private String lastNAme;
private List<String> phoneNumbers;
作为一个好的数据库设计
这些关系实体应具有类似于以下的列
ParentEntity
entity_id first_name last_name
PhoneNumber
child_id entity_id phone_number
模型类中的这些映射配置
@Entity
public class ParentEntity {
@Id
private long entityId;
private String firstName;
private String lastName;
@OneToMany(mappedBy="parentEntity")
private Set<PhoneNumber> phoneNumbers;
}
@Entity
public class PhoneNumber {
@Id
private long childId;
@ManyToOne
@JoinColumn(name = "entityId")
private ParentEntity parentEntity
private int phoneNumber;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.