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

pau*_*aul 16 java spring mongodb spring-data

我正在使用MongoDB使用Spring数据和MongoDB.

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

Fai*_*roz 18

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

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

  Long deletePersonByLastname(String lastname);         
}
Run Code Online (Sandbox Code Playgroud)

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


小智 17

@Query(value="{id : $0}", delete = true)
public Person deleteBy
Run Code Online (Sandbox Code Playgroud)

  • 您还可以使用@DeleteQuery,它不需要显式delete = true设置。 (2认同)