개발 기간 : 2022.10.26 ~ 2023.01.10 (2개월)
| 김동진 | 민석홍 | 최민재 |
|---|---|---|
| @Dongjin0224 | @shmin7777 | @alswo1212 |
Non-Blocking과 MQ 숙련도 향상을 위해 진행하였으며, 저희
서비스에 가입한 사용자는 1:1 채팅이나 그룹 채팅을 이용하여 다른
사람들과 빠르게 채팅을 주고 받을 수 있습니다.
| 메인 페이지 | 친구 추가 페이지 |
|---|---|
![]() |
![]() |
| 채팅방 만들기 | 로그인 |
![]() |
![]() |
- File 포함 Message 주고 받을 수 있음
- 현재 들어와 있는 채팅방에서 상대방이 입력 중일 때 표시
- 채팅방 목록이 실시간으로 변경
- File 클릭 시 다운로드
- 친구 이름 또는 이메일 검색 시 해당 유저 조회
- 친구 목록 조회
- 친구 클릭시 대화방 생성
- 1:1 채팅, 그룹 채팅방 생성 가능
- 채팅방 목록 조회
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
├── shell
│ ├── Dockerfile
│ ├── messenger_client.sh
│ ├── messenger_server.sh
│ └── messenger_server.sh.bak
└── src
├── main
│ ├── java
│ │ └── com
│ │ └── teamride
│ │ └── messenger
│ │ └── client
│ │ ├── MessengerClientApplication.java
│ │ ├── config
│ │ │ ├── ApplicationContextProvider.java
│ │ │ ├── ClientConfig.java
│ │ │ ├── Constants.java
│ │ │ ├── KafkaAdminClientConfig.java
│ │ │ ├── KafkaConstants.java
│ │ │ ├── KafkaConsumerConfig.java
│ │ │ ├── KafkaProducerConfig.java
│ │ │ ├── WebClientConfig.java
│ │ │ ├── WebConfig.java
│ │ │ └── WebSocketConfig.java
│ │ ├── controller
│ │ │ ├── KakaoLoginController.java
│ │ │ ├── NaverLoginController.java
│ │ │ ├── RoomController.java
│ │ │ ├── ServerConnectController.java
│ │ │ ├── StompChatController.java
│ │ │ └── UserController.java
│ │ ├── dto
│ │ │ ├── ChatMessageDTO.java
│ │ │ ├── ChatRoomDTO.java
│ │ │ ├── FriendDTO.java
│ │ │ ├── FriendInfoDTO.java
│ │ │ └── UserDTO.java
│ │ ├── interceptor
│ │ │ └── LoginCheckInterceptor.java
│ │ ├── repository
│ │ │ └── ChatRoomRepository.java
│ │ ├── service
│ │ │ ├── MailService.java
│ │ │ ├── StompChatService.java
│ │ │ └── UserService.java
│ │ └── utils
│ │ ├── BeanUtils.java
│ │ └── RestResponse.java
└── resources
│ ├── application.yml
─ build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
├── shell
│ ├── Dockerfile
│ ├── messenger_server.sh
│ └── messenger_server.sh.bak
└── src
├── main
│ ├── java
│ │ └── com
│ │ └── teamride
│ │ └── messenger
│ │ └── server
│ │ ├── MessengerServerApplication.java
│ │ ├── config
│ │ │ ├── KafkaConstants.java
│ │ │ ├── KafkaConsumerConfig.java
│ │ │ ├── KafkaProducerConfig.java
│ │ │ └── WebConfig.java
│ │ ├── controller
│ │ │ ├── ChatController.java
│ │ │ ├── KafkaController.java
│ │ │ ├── MailService.java
│ │ │ ├── TestController.java
│ │ │ └── UserController.java
│ │ ├── dto
│ │ │ ├── ChatMessageDTO.java
│ │ │ ├── ChatRoomDTO.java
│ │ │ ├── FriendDTO.java
│ │ │ ├── FriendInfoDTO.java
│ │ │ ├── SaveUserDTO.java
│ │ │ └── UserDTO.java
│ │ ├── entity
│ │ │ ├── ChatMessageEntity.java
│ │ │ ├── ChatRoomEntity.java
│ │ │ ├── FriendEntity.java
│ │ │ └── UserEntity.java
│ │ ├── repository
│ │ │ ├── ChatMessageRepository.java
│ │ │ ├── ChatRoomRepository.java
│ │ │ ├── FriendRepository.java
│ │ │ └── UserRepository.java
│ │ ├── service
│ │ │ ├── ChatService.java
│ │ │ └── UserService.java
│ │ └── util
│ │ └── RestResponse.java
│ └── resources
│ ├── application-prod.yml
│ ├── application.yml





