2025년 9월 3일 수요일(70일차)

Jeonghoon·2025년 9월 3일

jeonghoon's Study

목록 보기
71/128

📡 WebSocket - 채팅 구현 핵심 정리


🔹 SocketHandler

  • TextWebSocketHandler 클래스를 상속받아 주요 메서드를 구현
  • 실무에서는 채팅 기록을 DB에 저장 및 관리하지만, 소규모 프로젝트는 Map 또는 List로 세션 관리
  • 메시지는 JSON 형식이나 Map 형식으로 주고받음
  • 메시지 type으로 접속/종료, 발신/수신 등 구분
  • 웹소켓에서는 REST API와 달리 자동 JSON 변환 미지원 → 직접 변환 필요
  • HTTP 세션처럼 웹소켓 세션에 클라이언트 정보 저장 가능

🔹 상속받는 주요 메서드

메서드명역할
afterConnectionEstablished클라이언트-서버 연결이 시작될 때 호출
afterConnectionClosed연결 종료 시 호출
handleTextMessage클라이언트가 메시지 전송 시 호출

🔹 ObjectMapper

  • JSON ↔ Java 객체 변환 라이브러리
메서드역할
.readValue(JSON, 클래스.class)JSON 문자열 → 자바 객체 변환
.writeValueAsString(객체)자바 객체 → JSON 문자열 변환

🧩 Java/JS 중요한 기타 사항

용어설명
@Autowired스프링 컨테이너에 등록된 Bean을 자동 의존성 주입
@Component클래스를 스프링 컨테이너에 Bean으로 등록
JSON.stringify()JS 객체를 JSON 문자열로 변환
JSON.parse()JSON 문자열을 JS 객체로 변환

0개의 댓글