HTTP 기반정적 리소스 제공ex) APACHE, NGINXHTTP 기반웹 서버 기능 + 애플리케이션 로직 수행ex) Tomcat, Jetty, UndertowWAS, DBWAS가 정적 리소스, 애플리케이션 로직을 모두 제공할 수 있기 때문에 2가지만으로도 웹 시스템
스프링 부트 환경에서 서블릿 등록원래는 톰캣같은 WAS를 직접 설치하고 그 위에 서블릿 코드를 클래스로 빌드해서 올린 다음 톰캣을 실행해야 함스프링 부트는 톰캣 서버를 내장하고 있기 때문에 별도로 톰캣을 설치하지 않아도 됨Packaging : War (Jar 아님) →
request로 넘겨받은 값으로 Member 객체 생성사용자의 요청 데이터를 자바 로직을 통해 가공시키고 가공된 데이터를 html 형식으로 출력함MemberRepository에 저장HTML 형식의 응답 데이터로 화면에 동적 데이터 출력자바 코드로 HTML 만드는 것은
프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받음공통 처리가 가능해짐프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아 호출함 \- 나머지 컨트롤러는 서블릿으로 만들 필요 없음서블릿과 비슷한 모양의 컨트롤러 인터페이스매개 변수requestresponse리턴 타입v
직접 만든 프레임워크와 거의 동일 FrontController → DispatcherServletDispatcherServlet도 서블릿으로 동작HttpServlet의 상속을 받음DispatcherServlet → FrameworkServlet → HttpServle
스프링 부트를 사용하면 자동으로 포함됨spring-boot-starter-logging사용하는 로깅 라이브러리SLF4J → 인터페이스Logback → 구현체다양한 라이브러리(구현체)가 있는데 스프링 부트는 기본으로 Logback을 제공함로그 선언롬복 @Slf4j를 사용
상품 id상품명가격수량상품 목록상품 상세상품 등록상품 수정HTML에 필요한 css 파일을 다운로드함resources/static/css에 저장@RequiredArgsConstructorfinal 붙은 필드를 주입받는 생성자를 자동으로 생성요청 URL/basic/item