QueryDSL删除方法

Mod*_*odi 8 querydsl spring-data spring-data-mongodb

我正在使用带有QueryDSL 2.9.0的spring-data-mongodb 1.2.0.

为什么不QueryDslPredicateExecutordelete(Predicate predicate)方法?

有解决方法吗?

Dha*_*ath 4

你可能能做的就是这个。使用“where”条件的谓词,查询对象,然后将其传递给删除方法

QMyObj obj= new QMyObj("myObj");
Iterable<MyObj> myObjs = myObjRepository.findAll(obj.property.eq("property"));
myObjRepository.delete(myObjs);
Run Code Online (Sandbox Code Playgroud)

在这里,我首先创建 Q 类的实例,然后根据谓词查找所有对象。然后调用存储库的void delete(Iterable<? extends T> entities)方法。

可能是因为这个解决方法他们不提供它,但这需要 Spring Source 的人确认