🎯 학습 목표
- Spring과 Spring Boot의 차이를 이해한다.
- start.spring.io로 프로젝트를 생성한다.
- 첫 애플리케이션을 실행한다.
📖 개념 설명
Spring은 자바 백엔드 개발의 사실상 표준 프레임워크입니다. 다만 전통적인 Spring은 설정(XML, 의존성, 서버 구성)이 복잡했습니다. Spring Boot는 이 설정의 90%를 자동화해, 개발자가 비즈니스 로직에 집중하도록 돕습니다.
핵심은 세 가지입니다. (1) 자동 설정(Auto-configuration): 의존성만 추가하면 합리적인 기본 설정이 적용됩니다. (2) 내장 서버: Tomcat이 jar 안에 포함되어 java -jar만으로 웹서버가 뜹니다. (3) 스타터(Starter): spring-boot-starter-web처럼 묶음 의존성으로 버전 충돌 걱정을 줄입니다.
💻 실습 — 프로젝트 생성
# https://start.spring.io 에서 아래로 선택 후 GENERATE
# Project: Gradle - Groovy
# Language: Java
# Spring Boot: 3.x (최신 안정)
# Java: 21
# Dependencies: Spring Web
# 받은 zip 압축 해제 후 폴더로 이동
💻 메인 클래스
// DemoApplication.java — 자동 생성됨
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
// @SpringBootApplication = 자동설정 + 컴포넌트 스캔 + 설정 클래스
💻 실행
# Gradle
./gradlew bootRun
# (Maven이면) ./mvnw spring-boot:run
# 기본 8080 포트로 서버 기동
# 콘솔에 "Tomcat started on port 8080" 이 보이면 성공
⚠️ 주의사항
- JDK 17 이상이 필요합니다(Spring Boot 3.x).
java -version으로 확인하세요. - 회사 프록시 환경이면 Gradle이 의존성을 못 받을 수 있습니다.
gradle.properties에 프록시를 설정하세요.
💡 팁
- IntelliJ IDEA의 Spring Initializr 마법사로도 같은 프로젝트를 만들 수 있습니다.
- 처음엔 Dependencies를 최소(Web)로 시작하고 필요할 때 추가하세요.