有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Mongodb/Java聊天查询和带有线程/消息的模型体系结构

我正在从事一个JavaSpring项目——使用mongodb。我很想知道是否应该将线程/消息分成两个模型

-- threads
----id
----fromUser
----toUser
----lastMessage 


-- messages
----id
----fromUser
----toUser
----lastMessage
----createdAt
----updatedAt

目前,我正在尝试从用户创建一个线程列表,看起来是这样的——但我不确定如何执行orderBy-createdAt——这也是一种创建列表的方法,但只显示线程的最新消息

@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;
}

共 (0) 个答案