TIL 83일차

Moon-Tree·2023년 4월 29일
0

◆ SockJS

  • 웹 소켓(WebSocket)과 유사한 방식으로 양방향 통신을 가능하게 하는 라이브러리입니다. 그러나 웹 소켓이 지원되지 않는 구형 브라우저에서도 동작할 수 있도록 설계되어 있습니다.

  • 서버와 클라이언트 간의 연결을 생성하고 유지하면서, 실시간으로 데이터를 전송할 수 있습니다.

  • 이를 위해, SockJS는 다양한 전송 프로토콜(transport protocol)을 제공합니다. 예를 들어, WebSocket이 지원되는 경우 WebSocket을 사용하고, 그렇지 않은 경우에는 HTTP Streaming, HTTP Long Polling 등의 방식으로 연결을 유지하고 데이터를 전송합니다.

  • JavaScript, Python, Java, Ruby, PHP 등 다양한 언어에서 지원되는 라이브러리입니다. 이를 이용하여 웹 애플리케이션에서 실시간 채팅, 게임, 알림 등 다양한 기능을 구현할 수 있습니다.

  • Node.js와 함께 사용하기 적합한 라이브러리입니다. Node.js는 이벤트 기반(event-driven)으로 동작하며, 비동기(asynchronous)로 작업을 처리하기 때문에, SockJS와 같은 라이브러리와 함께 사용하면 높은 성능을 발휘할 수 있습니다.

◆ ObjectMapper

  • Java 객체와 JSON 문자열 간의 변환 기능을 제공하는 Jackson 라이브러리의 클래스입니다.
  • ObjectMapper 클래스의 writeValueAsString() 메서드는 Java 개체를 입력으로 사용하고 해당 개체의 JSON 문자열 표현을 반환합니다.

◆ View Resolver setting

  • ex) spring.mvc.view.prefix=/WEB-INF/views/ //접두사
    spring.mvc.view.suffix=.jsp //접미사
  • 논리적 뷰 이름을 가져오고 실제 뷰를 반환하는 역할을 합니다.
  • 컨트롤러에서 반환된 논리적 뷰 이름을 클라이언트에 렌더링될 실제 뷰(예: JSP, HTML 파일 등)로 확인하는 Spring Framework의 웹 MVC 모듈에 있는 구성 요소입니다.
  • View Resolver가 실제 보기를 찾으면 DispatcherServlet으로 반환되어 보기를 렌더링하고 다시 클라이언트로 보냅니다.
    Spring Framework는 JSP, FreeMarker 템플릿, Thymeleaf 템플릿 등과 같은 다양한 뷰 기술을 위한 몇 가지 기본 제공 View Resolver를 제공합니다. 필요한 경우 고유한 사용자 정의 View Resolver를 생성할 수도 있습니다.
profile
Backend Developer

0개의 댓글