#java #mongodb
Вопрос:
Я работаю над проектом Java spring, используя mongodb. Мне любопытно узнать, следует ли мне разделить поток/сообщения на две модели
-- threads
----id
----fromUser
----toUser
----lastMessage
-- messages
----id
----fromUser
----toUser
----lastMessage
----createdAt
----updatedAt
в настоящее время я пытаюсь создать список потоков от пользователя, который выглядит следующим образом, но я не уверен, как выполнить заказ, созданный — — — но также способ создания списка, но отображающий только самое последнее сообщение потока.
@CrossOrigin
@GetMapping("/api/chat/threads/{fromUserID}")
@ResponseBody
public BasicDBObject listChatFromUser (
@PathVariable(value="fromUserID", required=false) String fromUserID
) {
List<Chat> chats = MongoApp.mongoOps().find(query(where("fromUserID").is(fromUserID)), Chat.class);
BasicDBObject obj = new BasicDBObject();
obj.put("chats", chats);
obj.put("count", chats.size());
return obj;
}