【发布时间】:2017-10-31 14:56:12
【问题描述】:
我正在使用 Spring Data MongoDB 和 QueryDSL 来执行一些简单的查询,但是我在尝试将谓词与 DBRef 对象的字段一起使用时遇到了问题。
似乎 DBRef 没有解析,所以查询总是返回空结果。从 2014 年开始,关于这个主题的问题主要有一些,尽管在 QueryDSL 和 Spring Data 方面似乎已经完成了一些工作,但我仍然无法使其工作,也没有找到任何工作示例。
我正在寻找一个简单的解决方案,如以下简化的测试用例:
@Document
class Foo {
@Id Integer id;
@DBref Bar bar;
}
@Document
class Bar {
@Id Integer id;
String name;
}
interface FooRepository extends MongoRepository<Foo, Integer>, QueryDslPredicateExecutor<Foo> { ... }
以及我尝试使用的查询:
fooRepository.findAll(QFoo.foo.bar.name.eq("test"))
我正在使用 QueryDSL 4.1.4、Spring Boot 1.5.3 和 Spring Data MongoDB 1.10.3
支持吗?我错过了什么吗?
【问题讨论】:
标签: mongodb spring-data spring-data-mongodb querydsl