Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
Tags
- 정적분석도구
- 파이썬
- 영어일기
- 일기
- serializtion
- application.yml
- JUnit5
- git 오류
- diary
- 테스트
- 알고리즘
- playgroundAI
- 연계방식
- 부하 테스트
- xapi
- JUnit
- notempty
- Runwith
- 백준
- 데이터 거버넌스
- LRS
- 데이터 직렬화
- 스택
- 소스코드품질
- useRef
- AI그림
- extendwith
- 코딩테스트
- git
- Live Template
Archives
- Today
- Total
HanSol's Oak Cask
Spring Boot 설정 파일 비교: application.yml vs application.properties 차이점 정리 본문
GPT가 말아주는 지식
Spring Boot 설정 파일 비교: application.yml vs application.properties 차이점 정리
HanSol_Lim 2025. 2. 7. 14:49Spring Boot 프로젝트에서 설정 파일을 다룰 때 application.yml과 application.properties 두 가지 형식을 사용할 수 있습니다. 두 파일은 기본적으로 동일한 설정을 저장하지만, 표현 방식과 사용성에서 차이가 있습니다. 이번 글에서는 yml과 properties의 차이점을 비교하고, 어떤 상황에서 어떤 파일을 선택하는 것이 좋은지 정리해보겠습니다.
1. application.yml vs application.properties 차이점 비교
비교 항목application.ymlapplication.properties
| 파일 형식 | YAML (계층적) | Key-Value (평면적) |
| 가독성 | 가독성이 높음 (계층 구조 표현 가능) | 단순한 Key-Value 구조로 간결함 |
| 주석 방식 | # 또는 --- | # |
| 배열 표현 | -를 사용하여 리스트 표현 가능 | 인덱스를 명시적으로 사용해야 함 |
| 네이밍 컨벤션 | 들여쓰기로 계층 구조 표현 | 점(.)을 이용해 계층 구조 표현 |
| Spring 공식 권장 | Spring Boot에서는 yml을 선호 | 기존 프로젝트에서는 properties가 많이 사용됨 |
2. 예제 코드 비교
(1) application.properties 예제
server.port=8080
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=1234
logging.level.org.springframework=DEBUG
my.custom.list[0]=item1
my.custom.list[1]=item2
my.custom.list[2]=item3
- Key-Value 방식으로 구성됨.
- 계층 구조가 .(dot)으로 표현됨.
- 리스트 표현 시 인덱스를 직접 명시해야 함.
(2) application.yml 예제
server:
port: 8080
spring:
datasource:
url: jdbc:mysql://localhost:3306/mydb
username: root
password: 1234
logging:
level:
org:
springframework: DEBUG
my:
custom:
list:
- item1
- item2
- item3
- 들여쓰기와 계층 구조를 활용하여 설정을 구조적으로 표현 가능.
- 배열 표현이 직관적(- 사용).
- 가독성이 높고 설정이 길어질수록 유지보수가 용이함.
3. 언제 어떤 것을 사용해야 할까?
| 상황 | 추천 파일 |
| 설정이 단순하고 Key-Value 구조가 익숙한 경우 | application.properties |
| 계층적 구조가 많거나 리스트/배열이 필요한 경우 | application.yml |
| 가독성과 유지보수를 고려해야 하는 경우 | application.yml |
| 기존 프로젝트가 properties 기반으로 작성된 경우 | application.properties |
Spring Boot에서는 application.yml을 공식적으로 추천하지만, 기존 시스템과의 호환성 또는 개인 취향에 따라 application.properties를 사용할 수도 있습니다.
4. 결론
Spring Boot 프로젝트에서 설정 파일을 선택할 때 yml과 properties의 차이를 이해하는 것이 중요합니다.
- 새로운 프로젝트에서는 application.yml이 가독성과 유지보수 측면에서 유리합니다.
- 기존 프로젝트가 properties 기반이라면 일관성을 유지하는 것이 좋습니다.
결론적으로, 프로젝트의 규모와 복잡성, 팀의 코드 스타일에 맞춰 적절한 방식을 선택하는 것이 가장 중요합니다.
📌 여러분은 어떤 설정 파일을 더 선호하시나요? 댓글로 의견을 남겨주세요! 😊
'GPT가 말아주는 지식' 카테고리의 다른 글
| JUnit4의 @Test(expected = ...)는 JUnit5에서 지원 X (0) | 2025.03.26 |
|---|---|
| IntelliJ에서 커스텀 Live Template 만드는 방법 (TDD 예제 포함) (1) | 2025.02.07 |
| JUnit4 @RunWith vs JUnit5 @ExtendWith 차이점 정리 (0) | 2025.02.07 |