HTTP 메시지에 모든 것을 전송HTML, TEXTIMAGE, 음성, 영상, 파일JSON, XML(API) HTTP 기반으로 동작정적 리소스 제공, 기타 부가기능정적(파일) HTML, CSS, JS, 이미지, 영상HTTP 기반으로 동작웹 서버 기능 포함 + (정적 리
스프링 부트는 서블릿을 직접 등록해서 사용할 수 있도록 @ServletComponentScan을 지원한다.@WebServlet 서블릿 애노테이션name: 서블릿 이름urlPatterns: URL 매핑imageSTART LINEHTTP 메소드URL쿼리 스트링스키마, 프로
컨트롤러: HTTP 요청을 받아서 파라미터를 검증하고, 비즈니스 로직(서비스에서 호출)을 실행한다. 그리고 뷰에 전달할 결과 데이터를 조회해서 모델에 담는다.모델: 뷰에 출력할 데이터를 담아둔다. 뷰가 필요한 데이터를 컨트롤러에서 모델에 담아서 전달해주는 덕
image프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받음프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아서 호출입구를 하나로!공통 처리 가능프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿을 사용하지 않아도 됨v1: 프론트 컨트롤러를 도입기존 구조를 최대한 유지하면
#### DispacherServlet 서블릿 등록 * `DispacherServlet` 도 부모 클래스에서 `HttpServlet` 을 상속 받아서 사용하고, 서블릿으로 동작한다. * DispatcherServlet FrameworkServlet HttpServ
@RestController@Controller 는 반환 값이 String 이면 뷰 이름으로 인식된다. 그래서 뷰를 찾고 뷰가 랜더링 된다.@RestController 는 반환 값으로 뷰를 찾는 것이 아니라, HTTP 메시지 바디에 바로 입력한다. 따라서 실행 결과로
<html xmlns:th="http://www.thymeleaf.org">th:href="@{/css/bootstrap.min.css}"href="value1" 을 th:href="value2" 의 값으로 변경한다.타임리프 뷰 템플릿을 거치게 되면 원래