4

使用: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作为字段条件的查询。工作正常。

4

1 回答 1

1

看起来 Spring Data尚不支持:

我认为问题解决了使用代理这一事实,但我还没有查看代码。

于 2012-02-10T20:49:18.440 回答