【问题标题】:How to delete a single element from a collection with spring data REST?如何使用 Spring Data REST 从集合中删除单个元素?
【发布时间】:2016-07-14 09:31:48
【问题描述】:

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

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

其他示例是@ManyToMany 关系。根据Spring Data REST Documentation,可以通过将实体URI POST 到关联URI 来将单个新元素添加到someRelation

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

一年多以前,here 提出了这个问题的可能重复项。不幸的是,哪里不是可行的解决方案,也不是不能从集合中删除的理由。

因此,除了标题中的问题之外,第二个问题是:从集合中删除是因为没有人愿意这样做而未实现,还是有充分的理由省略此功能?

【问题讨论】:

  • 您是否尝试为此编写一些代码?

标签: java spring spring-data-rest


【解决方案1】:

应该对以下 URL 进行 DELETE:

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

假设您要从人员 1234 中删除地址 id 567。

【讨论】:

    猜你喜欢
    • 2018-12-26
    • 2023-03-29
    • 1970-01-01
    • 2016-09-24
    • 2017-06-05
    • 2011-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多