서블릿 컨테이너 띄우기
Sprinb Boot에서 Containerless환경을 구현하기 위해 Stand Alone 프로그램에서 서블릿 컨테이너를 직접 설치하지 않고 알아서 띄워주는 작업에 대해 알아보도록 하겠습니다.
톰켓 컨테이너 시작
톰켓에 어떠한 서블릿도 존재하지 않는 서블릿 컨테이너만 실행하는 코드 구현
package com.tobyspring.tobyspringboot;
import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
import org.springframework.boot.web.server.WebServer;
public class TobyspringbootApplication {
public static void main(String[] args) {
/*
Spring Boot에서 Tomcat Sublet 컨테이너를 내장해서 프로그앰에서 코드로
쉽게 사용할 수 있도록 제공하는 클래스 TomcatServletWebServerFactory
*/
TomcatServletWebServerFactory serverFactory = new TomcatServletWebServerFactory();
/*
웹서버 서블릿 컨테이너를 생성하는 함수 리턴타입이 디폴트로 설정한
Tomcat이라는 명칭은 사라지고 WebServer명칭으로 된이유는 스프링 부트가
톰캣 외에 제티나 언더토우같은 다양한 서블릿 컨테이너를 지원할 수 있고
지원하되 일관된 방식으로 사용할 수 있도록 동작하게할 수 있도록
추상화 해놨기 때문이다.
*/
WebServer webServer = serverFactory.getWebServer();
/*
Servlet 컨테이너 동작 함수
*/
webServer.start();
}
위 코드를 작성후 실행하면 톰캣 컨테이너가 동작되는 부분을 확인할 수 있습니다. 단 현재는 요청에 대한응답을 처리할 수 있는 서블릿을 구현하지 않았기 때문에 404 Not Found오류가 발생합니다.
'Spring > 인프런 토비의 Spring Boot' 카테고리의 다른 글
섹션 3-4 [독립 실행형 서블릿 애플리케이션] 서블릿 요청 처리 (0) | 2024.05.30 |
---|---|
섹션 3-3 [독립 실행형 서블릿 애플리케이션] 서블릿 등록 (0) | 2024.05.30 |
섹션 3-1 [독립 실행형 서블릿 애플리케이션] Containerless 개발 준비 (0) | 2024.05.30 |
섹션 2-5 [스프링 부트 시작하기] HTTP 요청과 응답 (0) | 2024.05.29 |
섹션 2-4 [스프링 부트 시작하기] Hello API 테스트 (0) | 2024.05.29 |