首页 > 解决方案 > 从没有应用程序端实体定义的 mongodb 返回嵌套数据

问题描述

我在 mongodb 有一组讲师(大约 1000 个文档)。
我想在使用 Spring Data Mongodb(即在应用程序的 Java 端,而不是数据库端)构建的存储库级别从集合中提取以下实体:

public class LecturerIDAndUsedBooks {
String lecturerId;
List<String> booksId;
}

目标:
我想提取分配给他们的所有书籍的讲师 ID 和 ID 列表(以列表的形式)
我的文档在集合
中的外观 每个讲师都有一节课,每节课都有一个书籍列表有身份证。

Lecturer 对象字段(集合中的文档)

String _id;
String name;
String surname;
Timestamp date;
Lesson lesson;

课程对象字段:(在 Lecturer 实体内)

String _id;
List<Student> students;
List<Book> books;

书籍对象字段:(在课程实体内)

String _id;
String name;
String author;

不幸的是,我不知道如何在我的应用程序一侧没有定义的实体出现在数据库中的情况下进行处理。
我首先将整个系列拉过

        MongoCollection<Document> collection = mongoTemplate.getCollection("lecturers");

但我不能把它变成我感兴趣的结果。
有没有人遇到过这类问题?
预先感谢您的帮助!

标签: javadatabasemongodbspring-data-mongodb

解决方案


推荐阅读