스프링 부트 내장 서버 바꾸기
본 포스팅에서는 스프링 부트의 내장 서버를 바꾸는 방법에 대해서 알아보도록 하겠습니다.
메이븐 설정 파일(pom.xml)만 조금씩 수정해주면 다양한 내장 서버를 사용해볼 수 있습니다.
Tomcat
스프링 부트는 디플트 내장 서버로 Tomcat을 사용하고 있습니다.
따라서 특별한 설정없이 Web Starter 의존성만 추가해주면 됩니다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
바로 스프링 부트 애플리케이션을 실행하면 Tocmat 내장 서버가 올라갑니다.
2017-08-13 14:27:51.375 INFO 94083 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
Jetty
스프링 부트의 내장 서버로 Tomcat 대신에 Jetty를 사용해보겠습니디.
먼저 Web Starter에 기본적으로 들어있는 Tomcat Starter를 제외시켜 줍니다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
다음으로 Jetty Starter 의존성을 추가해줍니다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
위와 같이 설정 후 스프링 부트 애플리케이션을 실행하면 Jetty 내장 서버가 올라갑니다.
2017-08-13 14:38:18.981 INFO 93986 --- [ main] .s.b.c.e.j.JettyEmbeddedServletContainer : Jetty started on port(s) 8080 (http/1.1)
Undertow
Undertow도 Jetty와 동일한 방식으로 설정해줄 수 있습니다.
먼저 Web Starter에 기본적으로 들어있는 Tomcat Starter를 제외시켜 주고, Undertow Starter 의존성만 추가 후에 스프링 부트 애플리케이션을 실행하면 Undertow 내장 서버가 올라갑니다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-undertow</artifactId>
</dependency>
2017-08-13 14:41:40.047 INFO 94037 --- [ main] b.c.e.u.UndertowEmbeddedServletContainer : Undertow started on port(s) 8080 (http)
이상으로 스프링 부트에서 제공하는 3가지 내장 서버를 바꿔가며 사용하는 방법에 대해서 알아보았습니다.