본문 바로가기
728x90

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술4

[Spring MVC] 구조 이해 이전 글에서 작성했던, 직접 스프링 MVC 프레임워크를 구현하는 과정과 비교하며 이번에는 실제 스프링 MVC 프레임워크의 구조를 이해하는 과정을 정리하는 강의이다. 스프링 MVC 전체 구조 직접 만들었던 MVC 프레임워크의 구조 Spring MVC 구조 각 요소들이 이름에 차이는 있지만, 똑같은 형태로 구성되어 있음을 확인할 수 있다. 차이점 FrontController -> DispatcherServlet handlerMappingMap -> HandlerMapping (interface, 더 확장성이 있음) MyHandlerAdapter -> HandlerAdpater ModelView -> ModelAndView viewResolver -> ViewResolver (interface, 더 확장성이 .. 2023. 5. 15.
[Spring MVC] MVC 프레임워크 만들기 프론트 컨트롤러 패턴이란? 이전까지 강의를 따라서 MVC 패턴을 적용하는 과정을 거치며, 반복되는 로직이 많아서 불편하다는 단점이 있었다. 이러한 반복되는 로직을 공통으로 처리하기 위해서는 프론트 컨트롤러 패턴을 적용해야 한다고.. 강의 자료의 사진을 조금 가져와보면, 이런 셈이다. Front controller라는 servlet을 만들어 공통 로직을 몰아서 처리하고, 각 Controller에서 처리할 작업을 담당하도록 구현하는 개발 방식이라고 한다. 항상 front controller에 의해 다른 controller가 호출되는 방식 FrontController 패턴의 특징 프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받는다. 프론트 컨트롤러가 알맞은 컨트롤러를 요청에 따라 찾아서 호출하는 구조 입.. 2023. 5. 6.
[Spring MVC] HttpServletRequest, HttpServletResponse HttpServletRequest의 역할 HTTP request message를 개발자가 직접 parsing 해서 사용해도 되지만, 매우 불편한 과정일 것이다. 이러한 일련의 과정을 서블릿이 대신 맡아 HTTP request message를 편리하게 사용할 수 있도록 새로운 객체를 만들어 parsing 한 정보를 관리하는데, 이 객체가 바로 HttpServletRequest이다. START LINE HTTP method URL query string schema, protocol Header 헤더 조회 Body form 형식의 데이터 조회 json과 같이 message body를 통한 데이터 직접 조회 위의 정보들을 편리하게 조회할 수 있도록 도울 뿐만 아니라 여러가지 부가 기능도 함께 제공한다. 임시 .. 2023. 3. 6.
HTML, HTTP API, CSR, SSR 용어와 개념 정리 정적 리소스 고정된 HTML 파일, CSS, JS, 이미지와 영상 등을 제공 주로 웹 브라우저의 요청에 대한 응답으로 전송한다. HTML 페이지 동적으로 필요한 HTML 파일을 WAS에서 생성해서 전달한다. 웹 브라우저에서는 받은 HTML을 해석해서 보여준다. HTTP API HTML이나 정적 리소스가 아닌 데이터를 전달한다. 최근에는 주로 JSON 형식을 사용해 데이터를 표현한다. 다양한 시스템에서 사용한다. (웹 브라우저에 전송하면, 그냥 json만 띡하니 띄워준다.) 데이터만 주고 받는다. UI 화면이 필요하면, 클라이언트가 별도로 처리한다. 앱, 웹 클라이언트, 서버 to 서버 자바스크립트의 ajax나 fetch와 같은 API를 이용해 서버의 HTTP API를 호출할 수 있는데, 이에 대한 응답으.. 2023. 2. 8.
728x90