본문 바로가기

공부/springboot22

스프링 - webSocket 을 이용해서 채팅 구현하기 webSocket : 2011년에 나온 비교적 최신 기술이며, http 처럼 일종의 통신 규약이다. 한번 연결된 이후에 계속해서 연결 상태가 유지되는 통신이라고 생각하면 된다. 흐름: 1. 스프링 내부에서 webSocket 요청을 받을 endPoint 설정 2. 자바 스크립트 - 스프링간의 webSocket 통신 연결 3. 요청(메시지)이 들어올시 처리될 코드 작성 실제 코드: 0. websocket 을 사용하기 위한 라이브러리 추가 implementation 'org.springframework.boot:spring-boot-starter-websocket' 1. WebSocketConfig 클래스 @Configuration @EnableWebSocket @RequiredArgsConstructor p.. 2024. 3. 8.
SpringMVC(3) : 서블릿 요청에 대한 응답 이 게시글에서는 사용자의 요청을 듣고, 서버가 응답해주는 방법을 정리한다. 사용자의 응답 역시 HTTP 메시지 형식인데, 이를 손쉽게 만드는 방법에 대한 내용이다. HTTP 메시지 header 만들기 @WebServlet(name = "responseHeaderServlet", urlPatterns = "/response-header") public class ResponseHeaderServlet extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //[status-line] respo.. 2023. 12. 11.
SpringMVC(2) : 서블릿 요청 처리 서블릿은 HTTP 통신을 더 쉽게 사용하기 위해 만들어진 자바 기능이다. 따라서 이를 이용한 HttpServletRequest 와 HttpServletResponse 역시 정보를 더 쉽게 추출해내거나 삽입하는 기능을 가지고 있다. 이 게시글에서는 HttpServletRequest 를 이용해 HTTP 요청 메시지의 내용을 꺼내는 다양한 방법과 HttpServletResponse를 이용해 다양한 방식으로 응답을 보내고 쿠키 등의 부가 설정을 하는 방법을 살펴볼 것이다. HTTP 메시지의 구조 HTTP통신을 다루는 기술인만큼 HTTP 통신의 기본 규약을 알아야할 필요가 있다. 이 게시글에서는 오직 http 메시지의 구조만 잠깐 흩고 지나갈것이다. http 통신에 대한 더 깊은 이해를 바라면 이전 게시글을 참조.. 2023. 12. 8.
SpringMVC(1) : 웹 어플리케이션 서버(WAS) 의 이해 웹 서버(Web Server)와 웹 어플리케이션 서버(Web Application Server) 이 둘의 경계는 모호하나 굳이 구분하면 정적인 웹 서버와 동적인 웹 어플리케이션 서버로 나눌수 있다. 정적인 서버는 오직 정적 리소스만 제공하며, 따라서 html, css, js 파일, 이미지 등을 클라이언트에게 전송해주나, DB에 저장된 데이터 등을 이용해 그에 맞는 화면을 클라이언트에게 전송해주는 것은 불가능하다. 반대로 was는 프로그램 코드를 실행하여, 애플리케이션 로직을 수행 그에 맞는 화면을 보여주거나 행동을 하는 것이 가능하다. 웹 어플리케이션 서버가 웹 서버의 개념까지 포함하여 더 많은 기능을 제공한다고 생각하면 편하다. 일반적으로 웹 시스템은 웹 서버 => 웹 어플리케이션 서버 => DB 로 .. 2023. 12. 6.