Mongodb springdata mongo嵌套属性查询

Mongodb springdata mongo嵌套属性查询,mongodb,spring-data,querydsl,spring-mongo,Mongodb,Spring Data,Querydsl,Spring Mongo,我有以下文件对应的pogo class Wrapper { String id //document Id corresponding field String defaultVersion String name List<VersionedInfo> versions } class VersionedInfo { String version .. few otherproperties } 是否有更好的替代方法来查询文档,以

我有以下文件对应的pogo

class Wrapper {
    String id //document Id corresponding field
    String defaultVersion
    String name
    List<VersionedInfo> versions
}

class VersionedInfo {
    String version
    .. few otherproperties
}

是否有更好的替代方法来查询文档,以便使用投影仅提取对应于VersionedInfo的defaultVersion?或者QueryDSL?

我不确定下面的考虑是否对您有所帮助。但请帮助我定义这些规则(类似)

如果应用程序经常检索带有defaultVersion信息的VersionedInfo数据,则应用程序需要发出多个查询来解析引用。更优化的模式是将VersionedInfo数据实体嵌入到defaultVersion(源文档mongoDB)中。 见:

关于参考文献的考虑: 使用引用时,关系的增长决定了引用的存储位置。

MongoDB聚合功能可以满足这一需求。 有一个示例查询。请参阅中的
聚合框架支持

Wrapper document = repository.findOne ("id")
VersionedInfo defaultVersionedInfo = document.versions.find { it.version == document.defaultVersion }