Backend/SpringBoot

Application.yaml 값 불러오기 (Class에 매핑)

Dean83 2026. 1. 29. 15:57

어딘가에 기록을 해 둔거 같은데...찾을수가 없어서 다시 기록해 둔다. 

다양한 방법으로 yaml 에 있는 값을 불러올 수 있으나, 여기서는 Class 혹은 Record에 매칭 하는 방법을 기준으로 정리해둔다. 

 

application.yaml에 다음과 같이 정의되어 있다면, 

...
jwt:
  secret: ${JWT_SECRET_KEY}
  access_key_expiration: 600000
  refresh_key_expiration: 1209600000
  issuer: "test-server"
...

 

아래와 같이 클래스 및 맴버변수로 매핑할 수 있다. 

@Getter
@Setter
@Configuration
@ConfigurationProperties(prefix = "jwt")
public class JwtProperties {
    private String issuer;
    private Long accessKeyExpiration;
    private Long refreshKeyExpiration;
    private String secret;
}

 

이렇게 별도로 클래스로 떼어 매핑하는 이유는, 역할 분리를 하기 위함이다. 
record로 매핑할 경우 불변이 되므로 좀 더 좋은 매핑이 될것으로 생각된다.