1. application.properties vs application.yml

Spring Initializr로 프로젝트를 생성하면 src/main/resources/application.properties 파일이 만들어집니다. 스프링부트는 두 가지 설정 파일 형식을 지원합니다.

application.properties (기본 생성):

server.port=8080
spring.datasource.url=jdbc:mysql://localhost:3306/board
spring.datasource.username=root
spring.datasource.password=1234
spring.jpa.hibernate.ddl-auto=update

application.yml (권장):

server:
  port: 8080

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/board
    username: root
    password: 1234
  jpa:
    hibernate:
      ddl-auto: update

둘 다 완전히 같은 설정입니다. 하지만 yml 형식을 권장합니다. 이유는:

지금 바로 해보세요: application.properties 파일을 삭제하고, 같은 위치에 application.yml 파일을 새로 만드세요.


2. yml 문법 기본 규칙

yml은 들여쓰기로 계층을 구분합니다. 규칙이 엄격하니 반드시 지켜야 합니다.

규칙 1: 들여쓰기는 반드시 스페이스(공백)

# ✅ 올바름 - 스페이스 2칸
server:
  port: 8080

# ❌ 에러 - 탭(Tab) 사용
server:
	port: 8080

탭을 쓰면 앱이 아예 시작되지 않습니다. IntelliJ에서 yml 파일의 탭을 스페이스로 자동 변환하도록 설정하세요: SettingsEditorCode StyleYAMLUse tab character 체크 해제

규칙 2: 콜론(:) 뒤에 반드시 공백 하나

# ✅ 올바름
server:
  port: 8080

# ❌ 에러 - 콜론 뒤 공백 없음
server:
  port:8080

규칙 3: 같은 레벨은 같은 들여쓰기