派生查询不适用于DBRef

时间:2011-11-15 15:00:49

标签: java spring mongodb spring-data spring-data-document

我正在使用Mongo和Spring Data。

我有两个(第一类)实体(@Documents)Entity1和Entity2,其中Entity1在其中有一个Entity2的引用(@DBRef)。一切正常,但在执行派生查询时,例如:

public List<Entity1> findByEntity2Property1(String property1)

尽管存在具有给定查询参数的文档,但上述查询不返回任何结果。那是为什么?

1 个答案:

答案 0 :(得分:0)

我不认为查询可以按预期工作,因为MongoDB几乎不允许通过DBRef限制对相关文档属性的结果。因此,您基本上必须查询与属性Entity2上的给定值匹配的所有Property1个实例,然后根据第一个查询的结果查询与Entity1 ed属性匹配的DBRef个实例