entity에 memberId가 있고 이걸 채팅할때 메시지를 받을 receiver들 리스트로 쓸 생각인데
mySQL에 리스트를 저장할 수 있나? 저장 못하면 이걸 어떤 식으로 구현해야 채팅방에 있는 멤버들한테 채팅이 가게 할 수 있을까?
entity에 memberId가 있고 이걸 채팅할때 메시지를 받을 receiver들 리스트로 쓸 생각인데
mySQL에 리스트를 저장할 수 있나? 저장 못하면 이걸 어떤 식으로 구현해야 채팅방에 있는 멤버들한테 채팅이 가게 할 수 있을까?
채팅방 테이블 만들고 (채팅방 id, 채팅방에 참여한 유저 외래키, 채팅방 이름 등등의 부가정보) 같은 방식으로 채팅방 엔티티와 유저 엔티티를 다대다로 구현해서 외래키로 관리하면 될듯
채팅방에 참여한 유저 외래키 <- 이 컬럼은 다대다 관계니까 채팅방 테이블에 포함시키지 말고 별도의 중간테이블을 만드는게 좋겠어요
User 테이블, Chatroom 테이블, UserChatroom 테이블 만들어서 UserChatroom에서 userId, chatroomId foreignkey로 들고있게
연결 테이블 있어야 하긴 하지 근데 채팅 메시지까지 포함하면 외래키 구성하기가 참 뭣같을듯
https://github.com/f-lab-edu/messenger-tempo/tree/main/src/main/java/com/messenger/domain
외래키
너무 복잡해져서 따로 찾아봤는데 이렇게 하는 게 딱 좋을듯
구냥 레디스에 저장해두고 조회하면 안되낭
????
자바 겨우떼고 sql 쿼리 깔짝했는데 뭔말하는지 신기하당 ㅎㅎ