1. 환경 구성
Spring Boot 개발을 위해 필요한 구성 요소는 다음과 같습니다.
| 구성 요소 | 설명 | 권장 버전 |
|---|---|---|
| JDK | Java Development Kit | 17 이상 (LTS) |
| Build Tool | 빌드 도구 | Gradle 또는 Maven |
2. JDK 설치
2.1. JDK 버전 선택
Spring Boot 3.x부터는 Java 17 이상 버전이 필요 합니다. LTS(Long Term Support) 버전인 Java 17 또는 Java 21을 사용하는 것을 권장합니다.
| Spring Boot 버전 | 최소 Java 버전 |
|---|---|
| Spring Boot 2.x | Java 8 |
| Spring Boot 3.x | Java 17 |
2.2. JDK 다운로드
다음 사이트에서 여러개의 JDK 배포판을 선택하여 다운로드 받을 수 있습니다.
Oracle JDK: oracle.com/javaOpenJDK: adoptium.net (Eclipse Temurin)Amazon Corretto: aws.amazon.com/corretto
2.3. macOS에서 설치 (Homebrew)
brew install openjdk@17
# 환경변수 설정 (.zshrc 또는 .bash_profile에 추가)
export JAVA_HOME=$(/usr/libexec/java_home -v 17)
export PATH=$JAVA_HOME/bin:$PATH2.4. Windows에서 설치
- Oracle JDK 또는 OpenJDK 다운로드
- 설치 파일 실행
- 환경변수 설정
JAVA_HOME: JDK 설치 경로 (예:C:\Program Files\Java\jdk-17)Path에%JAVA_HOME%\bin추가
2.5. 설치 확인
# Java 버전 확인
java -versionopenjdk version "17.0.9" 2023-10-17
OpenJDK Runtime Environment Temurin-17.0.9+9 (build 17.0.9+9)
OpenJDK 64-Bit Server VM Temurin-17.0.9+9 (build 17.0.9+9, mixed mode)3. 빌드 도구 선택
3.1. Gradle vs Maven 비교
| 항목 | Gradle | Maven |
|---|---|---|
| 설정 파일 | build.gradle(.kts) | pom.xml |
| 설정 언어 | Groovy / Kotlin DSL | XML |
| 빌드 속도 | 빠름 (증분 빌드) | 보통 |
| 학습 곡선 | 높음 | 낮음 |
| 유연성 | 높음 | 보통 |
최근에는 Gradle을 더 많이 사용합니다.
3.2. Gradle 설치 (선택)
Spring Boot 프로젝트에는 Gradle Wrapper가 포함되어 있어 별도 설치가 필요 없습니다. 만약 전역으로 설치하고 싶다면 아래와 같이 합니다.
# macOS (Homebrew)
brew install gradle
# 버전 확인
gradle -v3.3. Gradle Wrapper 사용
보통 프로젝트에 포함된 Gradle Wrapper를 사용하기 때문에, 팀원 모두 동일한 Gradle 버전을 사용할 수 있습니다.
# macOS / Linux
./gradlew build
# Windows
gradlew.bat build4. Spring Initializr로 프로젝트 생성
4.1. 웹에서 생성
start.spring.io에 접속하여 프로젝트를 생성합니다.
기본 설정:
| 항목 | 권장 값 |
|---|---|
| Project | Gradle - Kotlin |
| Language | Java |
| Spring Boot | 3.x.x (최신 안정 버전) |
| Packaging | Jar |
| Java | 17 |
4.2. 의존성 추가
기본적으로 추가하면 좋은 의존성
Spring Web: REST API 개발Spring Data JPA: 데이터베이스 연동H2 Database: 개발용 인메모리 DBLombok: 보일러플레이트 코드 감소Spring Boot DevTools: 개발 편의 기능
4.3. IntelliJ에서 직접 생성
File→New→ProjectSpring Initializr선택- 설정 입력 후 의존성 선택
Create클릭
5. 프로젝트 구조
생성된 프로젝트 구조는 다음과 같습니다.
my-project/
├── gradle/
│ └── wrapper/
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/example/myproject/
│ │ │ └── MyProjectApplication.java
│ │ └── resources/
│ │ ├── application.properties
│ │ ├── static/
│ │ └── templates/
│ └── test/
│ └── java/
│ └── com/example/myproject/
│ └── MyProjectApplicationTests.java
├── build.gradle.kts
├── gradlew
├── gradlew.bat
└── settings.gradle.kts5.1. 주요 파일 설명
| 파일 | 설명 |
|---|---|
build.gradle.kts | Gradle 빌드 설정 |
application.properties | 애플리케이션 설정 |
*Application.java | 메인 클래스 (진입점) |
gradlew | Gradle Wrapper 스크립트 |
6. 애플리케이션 실행
6.1. IDE에서 실행
메인 클래스(*Application.java)를 열고 Run 버튼을 클릭합니다.
@SpringBootApplication
public class MyProjectApplication {
public static void main(String[] args) {
SpringApplication.run(MyProjectApplication.class, args);
}
}6.2. 터미널에서 실행
# Gradle로 실행
./gradlew bootRun
# 또는 JAR 빌드 후 실행
./gradlew build
java -jar build/libs/my-project-0.0.1-SNAPSHOT.jar6.3. 실행 확인
# 브라우저 또는 curl로 확인
curl http://localhost:80807. 기타 설정
7.1. application.properties 기본 설정
# 서버 포트 변경
server.port=8080
# 개발 모드 설정
spring.devtools.restart.enabled=true
# 로그 레벨 설정
logging.level.root=INFO
logging.level.com.example=DEBUG7.2. Lombok 설정 (IntelliJ)
Lombok 사용 시 IDE 설정이 필요합니다.
Settings→Build, Execution, Deployment→Compiler→Annotation ProcessorsEnable annotation processing체크