본문으로 바로가기

2단계

2단계 — 첫 Spring Boot 4 프로젝트

7회 조회

목차

start.spring.io 가 표준 시작점이에요. 클릭 몇 번으로 프로젝트 골격이 만들어집니다.

시작 설정

다음 옵션으로:

  • Project: Gradle - Kotlin DSL
  • Language: Java
  • Spring Boot: 4.0.x
  • Java: 21
  • Dependencies: Spring Web, Spring Data JPA, PostgreSQL Driver, Lombok, Validation

Generate → zip 다운로드 → 압축 풀고 IntelliJ 또는 VS Code 로 열어요.

첫 컨트롤러

// src/main/java/com/example/demo/HelloController.java
package com.example.demo;

import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/api/hello")
public class HelloController {

    @GetMapping
    public String hello() {
        return "안녕하세요, Spring!";
    }

    @GetMapping("/{name}")
    public String greet(@PathVariable String name) {
        return "안녕, " + name + "!";
    }
}

@RestControllerJSON 응답 컨트롤러 라는 표시. @GetMapping 은 GET 요청만 받겠다는 뜻.

실행

./gradlew bootRun

기본 포트 8080 으로 떠요. 브라우저에서 http://localhost:8080/api/hello 또는 http://localhost:8080/api/hello/example로 확인합니다.

폴더 구조 한 번에

demo/
├── build.gradle.kts        ← 빌드 설정
├── src/main/
│   ├── java/com/example/demo/
│   │   ├── DemoApplication.java   ← 시작 클래스 (@SpringBootApplication)
│   │   └── HelloController.java   ← 위에서 만든 컨트롤러
│   └── resources/
│       ├── application.yml        ← 설정 (DB URL, 포트 등)
│       └── static/                ← 정적 파일 (이 강좌에선 빈 채로)
└── src/test/                       ← 테스트 (6단계에서)

직접 해 보기

HelloController 에 새 메서드 @PostMapping("/echo") 를 추가해 본문 (request body) 을 그대로 돌려주는 API 를 만들어 보세요. @RequestBody Map<String, Object> 를 인자로 받으면 JSON 자동 파싱.

더 깊이

다음 단계

3단계에서는 데이터를 진짜로 저장할 수 있도록 SQL 을 SSOT 로 다루는 법을 배워요.