◇ PART · SPRING

Spring vs Spring Boot

우리는 왜 Legacy 로 시작하는가

학습 목표

  • Spring 과 Spring Boot 의 관계를 안다
  • Boot 가 어떤 부담을 자동화해주는지 안다
  • 우리 과정이 Legacy 로 시작하는 이유를 안다

두 단어의 관계

Spring (Framework) ← 거대한 도구 모음 │ ├── Spring MVC (웹) ├── Spring JDBC (DB) ├── Spring Security (보안) └── ... 수십 개 Spring Boot ← Spring 위에 얹힌 자동 설정 도우미 └── 「설정 다 알아서 해줄게」

🛠️ Spring (Legacy)

고전 방식

웹 프로젝트를 만들려면 web.xml·root-context.xml·servlet-context.xml 같은 XML 설정 파일을 직접 작성. 자유도 높지만 진입 장벽도 높음.

🚀 Spring Boot

현대 방식 — 「자동 설정」

설정 파일 거의 안 씀. @SpringBootApplication 한 줄에 컨테이너·내장 톰캣·DB 연동까지 자동. main() 메서드 하나로 실행.


@SpringBootApplication
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class, args);  // 끝!
    }
}

📊 한눈에 비교

항목Spring (Legacy)Spring Boot
설정XML 직접 작성자동 설정
서버외부 Tomcat내장 Tomcat
실행WAR 배포java -jar
진입 장벽높음낮음
학습 가치구조를 깊이 이해빠른 결과

왜 우리는 Legacy 로?

Boot 는 편리하지만 많은 일을 자동으로 숨겨놓습니다. 비전공자가 Boot 로 시작하면 「되긴 하는데 왜 되는지 모르는」 상태가 되기 쉽습니다.

Legacy 로 XML 한 줄 한 줄을 직접 짜보면 Spring 의 동작 원리를 이해할 수 있고, 나중에 Boot 로 옮길 때도 자신 있게 다룰 수 있습니다.

🔄 Before / After

전 차시까지

Spring 의 IoC/DI 발상은 안다. Spring Boot 와 차이는 모름.

이번 차시 끝

Spring 과 Boot 의 관계를 안다. 우리가 Legacy 로 시작하는 이유에 동의한다.

이번 차시의 데이터 흐름

Spring Framework
(우리가 학습)
Spring Boot
(후속 과정)
학습 경로의 큰 그림이 잡혔습니다

정리

오늘 들고 가는 것

  • Spring = 거대한 프레임워크 모음
  • Boot = Spring 자동 설정 도우미
  • 우리는 원리를 이해하기 위해 Legacy 로

다음: Maven & pom.xml.