如何使用spring数据REST从集合中删除单个元素?

时间:2016-07-14 09:31:49

标签: java spring spring-data-rest

考虑拥有集合关系的JPA实体,例如:

@Entity
class SomeEntity {
  @OneToMany
  List<SomeOtherEntity> someRelation;
  // ....
}

其他例子是@ManyToMany关系。根据{{​​3}},可以通过将实体URI发布到关联URI来将单个新元素添加到someRelation

似乎没有办法从集合中删除单个元素。尽管文档提到DELETE是支持的方法,但它似乎仅适用于单个元素关联。 Spring Data REST Documentation表示不支持对集合关联的DELETE。请注意,此问题中的上下文不同:我不想删除整个集合,而是删除单个元素。

一年前,This answer提出了这个问题的可能重复。不幸的是,哪里没有可行的解决方案,也没有理由为什么不能从馆藏中删除。

所以第二个问题,除了标题中的问题之外,还有:从没有实施的集合中删除是因为没有人关心这样做,还是有充分的理由拒绝这个功能?

1 个答案:

答案 0 :(得分:-2)

应该对以下网址执行DELETE:

http://myapp.com/people/1234/address/567

假设您要从人1234删除地址ID 567。