2019. 7. 15. 17:27ㆍ카테고리 없음
---------------------------------WebSocket----------------------------
WebSocket
- 브라우저와 웹서버간의 전이중통신을 지원하는 프로토콜이다.
- HTML5버전부터 지원하는 기능이다.
- 자바 톰캣7버전부터 지원했으나 8버전부터 본격적으로 지원한다.
- spring4부터 웹소켓을 지원한다.
Spring을 활용한 웹소켓 요청 처리
- WebSocketHandler 인터페이스를 구현한 핸들러 클래스를 작성해서 구현한다.
- WebSocketHandler의 주요 메소드
void handlerMwssage(WebSocketSession session, WebSocketMessage message)
- 클라이언트로부터 메세지가 도착하면 실행된다.
void afterConnectionEstablished(WebSocketSession session)
- 클라이언트와 연결이 완료되고, 통신할 준비가 되면 실행된다.
void afterConnectionClosed(WebSocketSession session, CloseStatus closeStatus)
- 클라이언트와 연결이 종료되면 실행된다.
void handleTransportError(WebSocketSession session, Throwable exception)
- 메세지 전송중 에러가 발생하면 실행된다.
- 웹소켓 요청을 처리할 때 자주 사용하는 클래스
- TextWebSocketHandler
- 텍스트 메세지 전용의 웹소켓핸들러를 구현할 때 사용한다.
- handlerTextMessage(WebSocketSession session, TextMessage message)
- 텍스트 메세지를 받았을때 실행된다.
- BinaryWebSocketHandler
- 바이너리 메세지 전용의 웹소켓핸들러를 구현할 때 사용한다.
- handleBinaryMessage(WebSocketSession session, BinaryMessage message)
- 바이너리 메세지를 받았을 때 실행된다.
브라우저에서의 웹소켓 처리
- HTML5를 지원하는 브라우저는 전부 웹소켓관련 API를 제공한다.
- 웹소켓 연결 시작하기
var webSocket = new WebSocket("ws://요청주소");
1. CourseVo
2. CourseDao
3. CourseDaoImpl
4. CourseService
5. CourseServiceImpl
6. CourseApplicationWebSocketHandler
7. home.jsp