새소식

반응형
Java/Spring Boot

@configurationProperties

  • -
728x90
반응형

@ConfigurationProperties

*.properties, *.yml 파일에 있는 property 및 값들을 자바 클래스로 가져와서 사용할 수 있게 해주는 어노테이션

 

Spring boot에서 필요한 설정들을 *.properties, *.yml 파일에 써두고 관리한다.

 

- test.properties

obo-test.number=010.1111.2222
obo-test.name=obo

 

위와 같은 properties 파일이 있다고 가정했을 때 아래와 같이 @Value 어노테이션을 사용하여 바인딩 시킨다.

 

@Value("${obo-test.number}")
private String number;

@Value("${obo-test.name}")
private String name;

 

위 방법은 직접 number 및 name을 입력하여 설정해야한다.

아래와 같이 오토 컴플릿을 위한 설정을 하여 사용한다.

 

1. pom.xml에 dependency 추가

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

 

2. @ConfigurationProperties 어노테이션 사용을 위한 클래스 생성

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

import lombok.Data;

@Component
@ConfigurationProperties(prefix="obo-test")
@Data
public class oboTestProperties{
    private String number;
    private String name;
}

 

위와 같이 @ConfigurationProperties 어노테이션을 사용하면 공통적인 property 값을 불러와 유연하게 사용할 수 있다.

728x90
반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.