如何使用查询注释删除 MongoRepository 中的项目?

新手上路,请多包涵

我使用 MongoRepository 将 Spring Data 与 MongoDB 结合使用。

我想知道是否可以使用查询注释通过过滤器进行删除。我一直在寻找这里和谷歌,我找不到任何文档。

原文由 paul 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 480
2 个回答
@Query(value="{'id' : $0}", delete = true)
public Person deleteById (String id);

原文由 Marcelo Pasut 发布,翻译遵循 CC BY-SA 4.0 许可协议

也许您可以使用存储库删除查询。这是 文档 中的示例:

 public interface PersonRepository extends MongoRepository<Person, String> {
  List <Person> deleteByLastname(String lastname);

  Long deletePersonByLastname(String lastname);
}

使用返回类型 List 将在实际删除它们之前检索并返回所有匹配的文档。数字返回类型直接删除匹配的文档,返回删除的文档总数。

原文由 Faisal Feroz 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题