我有一个实体,其中一个属性是AnnotationTarget
的列表,定义为@Embeddable
@ElementCollection(targetClass = AnnotationTarget.class)
@CollectionTable(name = "annotation_targets", joinColumns = @JoinColumn(name = "annotation_id"))
private List<AnnotationTarget> targets = new ArrayList<>();
在我的RestController中,我做了一个POST来创建我的实体,我看到实体已经创建,@Embeddable
也在annotation_targets
表中正确创建了。当我向同一资源发出GET请求时,它返回实体的所有元素,但是目标我得到一个1元素的数组,这是一个空的JSON。
{
"id": "9c3e56b6-97ea-40fb-aa06-991826b34751",
"userId": "883233d5-b00f-464a-9f26-f7e2dd0a6a7b",
"type": "TEXT",
"targets": [
{}
],
"createdAt": 1520626966343,
"updatedAt": 1520626966343
}
打印一些语句我确实看到getTargets()
返回数据,所以不确定为什么这会是空的?任何帮助都会很棒