我使用以下代码从 mongoDB 集合中删除具有给定 parent_id
的所有元素:
final String strQuery = "db.Child.remove({'$query':{'PARENT_ID':'" + parentId + "'}})";
final Query query = entityManager.createNativeQuery(strQuery, Child.class);
query.executeUpdate();
但是,我遇到以下异常:
Unexpected Exception
com.mongodb.util.JSONParseException:
db.Child.remove({'$query':{'CHILD_ID':'7313c076-dbaa-4557-b80f-68d040b65d82'}})
如果我将 remove
替换为 find
,我会得到结果。不知道是什么导致了上述 native 查询中的 JSON 解析器错误。
我正在使用 hibernate-ogm 版本 4.3 Final 和 mongo-db 3.2
最佳答案
Hibernate OGM 4.3 不支持 native 查询的删除操作。
您应该尝试一下 OGM 5.0.2.Final:它应该可以解决您的问题,因为我们添加了对大量其他操作的支持(以及许多其他修复和改进)。
关于java - 无法使用 hibernate OGM 从 mongoDB 中删除元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39793733/