Spring Boot 이해하는 키워드
학습자료: 토비의 스프링부트 강의, 인프런
1. Web Container
Web Container는 Web Component를 관리하는 기능을 담당한다.
Web Component는 Dynamic Content를 제공하기 위해서 존재한다.
Web Client의 Request를 담당할 Web Component에게 Routing 또는 Mapping을 해준다.
자바에서 Web Component는 Servlet, Web Container는 Servlet Container로 보는 것이 일반적이다.
2. Containerless
Servlet Container를 설정하는 것이 굉장히 복잡하다.
하지만 이러한 설정이 시작 단계에서 이후에서는 중요한 과정이 아니다.
Servlet Container가 사라지는 것은 아니지만, Spring Boot를 통해서 복잡한 설정없이 Standalone Application으로 동작할 수 있도록 한다.
3. Opinionated(고집이 있는, 자기주장이 강한)
스프링 프레임워크의 설계 철학
극단적인 유연함을 추구, Not Opinionated, 다양한 관점을 추구, 수많은 선택지를 다 포용한다.
이러한 유연함은 개발자가 프로젝트를 시작할 때, 기술 선택과 설계 고민이 중요하다.
스프링 부트의 설계 철학
스프링 부트는 일단 정해주는대로 빠르게 개발할 수 있도록 Opinionated 철학을 가진다.
표준 자바 기술 및 오픈소스 기술의 종류와 의존관계 및 사용 버전을 정해준다.
DI구성과 디폴트 설정값을 제공한다.
하지만, 유연한 확장
디폴트 구성을 커스터마이징 하는 매우 자연스럽고 유연한 방법 제공
스프링 부트가 스프링을 사용하는 방식을 이해한다면, 언제라도 스프링부트없이 재구성 가능
나만의 스프링 부트 모듈을 작성할 수 있음
스프링 부트를 이해해야하는 이유?
스프링 부트가 스프링의 기술을 어떻게 활용하는지 배우고 응용할 수 있다.
Last updated