토비의 스프링 부트 - 이해와 원리 1강

Jiyeong·2023년 2월 15일
0

Spring

목록 보기
15/17

스프링 부트 살펴보기

스프링 부트

스프링을 기반으로 실무 환경에 사용 가능한 수주느이 독립 실행형 애플리케이션을 복잡한 고민 없이 빠르게 작성할 수 있게 도와주는 여러 가지의 도구 모음

스프링 부트의 핵심 목표

  • 매우 빠르고 광범위한 영역의 스프링 개발 경험 제공
  • 강한 주장을 가지고 즉시 적용 가능한 기술 조합 제공, 필요에 따라 원하는 방식으로 손쉽게 변형 가능
  • 프로젝트에서 필요로 하는 다양한 비기능적인 기술(내장형 서버, 보안, 메트릭, 상태 체크, 외부 설정 방식 등) 제공
  • 코드 생성이나 XML 설정을 필요로 하지 않음

스프링 부트의 역사

2012년 스프링 프레임워크 프로젝트에 이슈로 등록된 "Containerless 웹 개발 아키텍처의 지원" 요청에는 논의와 개발을 시작함

Containerless

Serverless와 유사함!
웹 컴포넌트는 항상 컨테이너 안에 있어야 한다.
컨테이너는 라이프 사이클을 관리해 줌, 다수의 웹 컴포넌트들을 다룸, 정해진 룰에 따라서 어떤 컴포넌트가 처리할 지 정해줌(=라우팅, 핸들러 매핑)

이를 서블릿 컨테이너라고 한다.
서블릿 컨테이너의 예시로 톰캣이 있음.

서블릿 컨테이너 뒤에서 스프링 컨테이너는 빈이 작업 처리를 할 수 있게 호출함.

다른 메인 메소드 하나만 살행해지 않도 나머지 캄퍼넌스도 작동 가능

Opinionated

사용 기술과 의존 라이브러리 결정

  • 업계에서 검증된 스프링 생태계 프로젝트, 표준 자바 기술, 오픈소스 기술의 종류와 의존 관계, 사용 버전 정해줌
  • 각 기술을 스프링에 적용하는 방식(DI 구성)과 디폴트 설정값 제공

유연한 확장

  • 기술과 구성을 간편하게 제공하는 나만의 모듈 작성
profile
깃스타가 되고 싶은 벨플루언서

0개의 댓글