
안녕하세요. 오늘은 스프링 부트에 대해 알아볼게요.
스프링 부트(Spring Boot)
스프링(Spring)을 쉽고 빠르게 사용할 수 있도록 지원하는 프레임 워크 확장판으로
스프링 부트 스타터를 제공을 해줍니다.
(빌드 & 의존성 관리 최소화)
XML 설정 없이 Java 코드 기반으로 설정이 가능하고(Annotation 기반),
내장 WAS(Tomcat)를 포함하기 때문에 별도 설치 없이 실행이 가능해요.
JAR 파일만으로 서버 실행 및 배포가 가능해요. (외부 서버 설치가 불필요)
+
% 스프링(Spring Framework)이란? %
엔터프라이즈 애플리케이션 개발을 위한 자바 기반의 강력한 프레임워크로
대규모, 복잡한 데이터 관리를 위한 서버 성능, 안정성, 보안 기능을 제공해 줘요.
그러나 초기 설정 시 XML 설정, 환경 구성이 필요하기 때문에 학습곡선이 높다는 단점이 있어요.
스프링 부트의 동작 구조

1. 클라이언트 > 서블릿 컨테이너 > DispatcherServlet
사용자의 요청이 들어오면(클라이언트), 서블릿 컨테이너(TomCat)가 DS로 전달(DispatcherServlet)
2. DS > 핸들러 매핑
요청 URL / HTTP 메서드에 맞는 컨트롤러(Handler)를 찾음
3. DS > 핸드럴 어댑터
해당 컨트롤러를 실행할 수 있는 어댑터를 통해 호출
4. 핸들러(Controller) 실행
비즈니스 로직 처리, 모델 / 뷰 이름 반환
@RestController면 JSON 등 직접 반환 (뷰 생략 가능)
5. DS > 뷰 리졸버 > 뷰 렌더링
뷰 이름이 있는 경우, 뷰 리졸버가 JSP / Tymeleaf 등 뷰를 반환
모델 데이터 포함 HTML 생성 > 클라이언트에 응답
+
@ 핵심 Point @
DS(DispatcherServlet)
요청을 받고 컨트롤러를 실행한 후 응답까지 반환까지 전체 흐름을 담당해요.
핸들러 매핑 + 핸들러 어댑터
요청과 컨트롤러를 연결하는 중간역할을해요.
@RestController
뷰 없이 데이터(JSON)만 바로 응답을 해요.

여기까지 Spring Boot에 알아봤는데요.
잘 활용한다면, 복잡한 자바 웹 애플리케이션 개발을
훨씬 간결하고 편리하게 만들어 줄 것 같아요.
'Backend > Java' 카테고리의 다른 글
| Spring Boot - 필터링 & 검색 기능 (0) | 2025.08.22 |
|---|---|
| Spring Boot - Validation (0) | 2025.08.20 |
| Java - JDBC (3) | 2025.08.13 |
| 스트림(Stream) API (5) | 2025.07.29 |
| 람다식(Lambda Expression) (4) | 2025.07.28 |