使用:Spring 3.1.0.RELEASE、Spring Data MongoDB 1.0.0.RELEASE
我有一个这样定义的文档类:
@Document
public class MyDoc
{
@Indexed
@DBRef
private User owner;
...
我正在尝试使用此存储库定义为特定用户选择所有 MyDoc 实例:
public interface MyDocRepository extends CrudRepository<MyDoc, String>
{
List<MyDoc> findByOwner(User owner);
}
不幸的是,这没有找到任何东西:代码运行良好,没有例外,但是没有找到任何东西。
那么通过 DBRef-ed 字段选择文档的正确方法是什么?
注意。我已经看到了这个问题,但我的用例更简单,因为我不想按 DBRef 实体的属性进行过滤。
更新:在存储库支持通过 DBRef 查找之前,我决定采用一个简单的解决方法:使用 MongoTemplate 来形成一个使用com.mongodb.DBRef作为字段条件的查询。工作正常。