Mongodb springdata mongo嵌套属性查询
我有以下文件对应的pogoMongodb 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 } 是否有更好的替代方法来查询文档,以
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 }