티스토리 뷰
스프링에서 @value 를 알아보다가 application.properties에 있는 값을 변수에 주입하기 위해 사용한다는 것을 알게 되었다.
그럼 application.properties는 왜 필요할까?
궁금해서 찾아보다가 문뜩 든 생각이, 그럼 코드에 상수로 정의할 수 있는 것들을 왜 application.properties에 정의할까를 궁금해졌다.
>> 배포 환경에 따라 여러 properties 파일을 두는 방법이 있다. 그렇게 되면 코드 수정없이 여러 배포환경에 따라 값을 수정할 수 있다는 것을 알게 되었다.
application.properties 이란?
application.properties 파일은 런타임 시 다양한 환경에서 동작할 수 있도록 필요한 옵션들을 제공하는데 사용된다.
예를 들자면 메일 서버를 구축하거나 db 종류별 설정, 로그사용여부 등을 설정 가능하다.
직접 커스텀 옵션 값을 추가할 수도 있고, 스프링에서 사용하는 디폴트 옵션들을 바꿀 수 있다.
다음 링크에서 application.properperties에서 사용 가능한 디폴트 옵션들을 확인할 수 있다.
application.properties은 어떻게 사용될 수 있을까
개발환경, 운영환경, 실제 서비스 등 다양한 환경에 따른 설정 옵션을 적용가능하다.
개발건이 서비스로 제공되기 전 여러 환경을 거쳐 개발되고 테스트되고 배포된다.
다양한 환경에 배포될 때마다 환경에 따른 설정 값을 프로퍼티 파일을 통해 코드 변경없이 바꿀 수 있다.
추가로 운영환경, 서비스 환경 두 가지 환경에 배포를 한다고 가정해볼 수 있다.
운영은 dev.properties, 서비스는 prod.properties 프로퍼티 파일을 생성하여 적용해보았다.
1. dev 환경 수행
java -jar thymeleaf-basic-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev
수행결과
2. prod 환경 수행
java -jar thymeleaf-basic-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod
수행결과
application.properties vs constant in class
application.properties
환경마다 변경 가능한 값 설정
=> configurable per environemnt etc.
constant in class
Use hardwired constants in your Java code when you don't want users / deployers / testers / tests changing them.
즉 환경에 따라 바뀌길 원치 않는 값들을 말한다.
참고 링크
https://m.blog.naver.com/songintae92/221330346447
'Spring' 카테고리의 다른 글
Spring Security Oauth2.0 설정 (진행중) (0) | 2025.01.09 |
---|---|
gradle 파일 개선 (1) | 2025.01.03 |
SpringFramework에서 property 파일 읽어오기 (0) | 2022.08.22 |
[Spring] Caused by: java.lang.IllegalStateException: Ambiguous mapping 에러 (0) | 2022.08.13 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 티스토리챌린지
- 괄호 변환
- 오블완
- 게리맨더링 2
- java
- 124 나라의 숫자
- 백준
- 3954
- Brainf**k 인터프리터
- programmers
- 단체사진 찍기
- 찾아라 프로그래밍 마에스터
- 자바
- 정수 내림차순으로 배치하기
- 짝지어 제거하기
- 프로그래머스
- 후보키
- DP
- 17779
- 문자열을 정수로 바꾸기
- 투포인터
- 카카오 2020 공채
- 2018 카카오 공채
- 2019 카카오 공채
- 가장 큰 정사각형 찾기
- 카카오2020 공채
- 주사위 윷놀이
- 큰 수 만들기
- 라면공장
- 17825
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
글 보관함