728x90
. properties 파일로부터 값을 받아와 static 변수에 맵핑하는 방법을 작성하였습니다.
1. 프로퍼티 작성
- 우선 constants.properties 라는 파일을 classpath 아래에 생성합니다.
- resources/propreties/constants.properties
base.user.id:999901
base.user.name:기본유저
2. 소스작성
- Constants.java 파일을 생성합니다.
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;
@Component
@PropertySource(value = "classpath:/properties/constants.properties")
public class Constants {
public static String BASE_USER_ID;
@Value("${base.user.id}")
public void setBaseUserId(String data) {
BASE_USER_ID = data;
}
public static String BASE_USER_NAME;
@Value("${base.user.name}")
public void setBaseUserName(String data) {
BASE_USER_NAME = data;
}
}
위 소스처럼 @PropertySource 를 통해 파일을 맵핑하고, Setter를 통해 @Value 값을 입력받습니다. 이렇게 되면 외부에서 해당 상수에 접근할 땐, static 변수인 BASE_USER_ID로 접근이 가능해 추가적인 주입 없이 상수처럼 사용할 수 있게 됩니다.
감사합니다.
728x90
'프레임워크 > SpringBoot' 카테고리의 다른 글
[SpringBoot] TextWebSocketHandler 내부에서 HttpSession 사용하기 (0) | 2024.05.14 |
---|---|
[SpringBoot] Mybatis Batch Update (1) | 2024.02.08 |
[SpringBoot] application.yml 멀티 프로필 설정 (0) | 2023.07.13 |
[SpringBoot] CORS Filter 생성 (0) | 2023.07.04 |
[SpringBoot] Session 관리하기 (0) | 2023.07.04 |