Tomcat 은 WAS 의 한 종류이다
* WAS ( Web Application Server ) : 정적리소스 및 동적인 애플리케이션 관리 서버
Spring Boot 는 내장형 웹 서버를 가지고 있으므로 애플리케이션을 실행할 때 별도의 구성 없이도 내장된 서버를 사용하여 애플리케이션을 실행할 수 있다.
기본적으로 Tomcat, Jetty, Undertow 와 같은 내장형 서버를 제공하며 선택해서 사용할 수 있다.
Spring 은 내장형 웹 서버를 가지고 있을까 ??
Srping Framework 는 Spring MVC 를 사용하여 웹 애플리케이션을 구축할 수 있다.
Spring MVC 를 사용할 때, 일반적으로 외부 웹 서버(Tomcat, Jetty 등)를 사용하지만 ......
Spring Framewokr 자체에 내장된 웹 서버는 포함되어 있지 않다 !!!! ( 별도로 설정 필요)
톰캣이 내장된 위치 !!
External Libraries 폴더에서 autoconfigure 찾기


spring .factories 에 들어가서 ' ServletWebServer' 를 검색해보자

ServletWebServerFactoryAutoConfiguration 클래스로 ㄱㄱ
<java />
@Bean
@ConditionalOnClass(
name = {"org.apache.catalina.startup.Tomcat"}
)
public TomcatServletWebServerFactoryCustomizer tomcatServletWebServerFactoryCustomizer(ServerProperties serverProperties) {
return new TomcatServletWebServerFactoryCustomizer(serverProperties);
}
해당 메서드에서 톰캣을 사용하고 있다는 것을 보여준다.
### 회고
Spring Boot 를 사용하면서 Spring Framework 와 큰 차이점도 알지 못햇고 ,
그저 프로젝트가 굴러가니 사용하며 'Spring Boot 에는 Tomcat 이 내장되어 있다' 라고 글로만 알고 있었지
어디에 있는지, 그리고 내장되어 있지않으면 어떻게 사용해야하는지? WAS 의 개념? 등에 대해서는 궁금하지 않았다.
그저 취준용 플젝 만들기에 급급
여유가 조금 생기니 하나하나 알아가는 재미가 있다
[ 참고 자료 ]

내장된 Tomcat 서버외에 다른 서버로 변경하고 싶다면?
[Spring Boot] 스프링부트 원리 - 내장 서버 (컨테이너와 포트)
「스프링부트 개념과 활용」 - 2부
velog.io

Spring Boot 가 아닌 Srping Framework 로 WAS 를 설정하고 싶다면???
1. Dynamic Web Project 에 MVC 패턴 적용
2. STS 로 Spring MVC 적용
[Spring] 스프링(Spring) 프로젝트 생성하기
스프링 프로젝트를 생성하고 초기 환경 세팅을 하는데 시간이 걸린다고 했다. 나는 전자정부프레임워크로만 세팅해봤고, 회사에서 기본으로 제공하는 파일에다가 세팅을 해봐서 아예 처음부터
velog.io
'Backend > Spring & Spring Boot' 카테고리의 다른 글
Spring에서 @Autowired와 static 메서드 사용 시 NullPointException (0) | 2025.01.22 |
---|---|
Spring boot - war 파일 기본 루트 (0) | 2023.12.07 |
Spring Framework , Spring , Spring Boot 간단 정리 (0) | 2023.11.28 |
의존성 주입이란? + @Autowired , IoC (0) | 2023.11.02 |
@Autowired(required = false) 사용 목적 (0) | 2023.11.02 |