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 | 31 |
Tags
- spring boot
- 스프링 시큐리티
- 메모이제이션
- Logback
- 다익스트라
- 달팽이
- Gradle
- 플로이드 와샬
- 비트마스킹
- 구간 트리
- 게이트웨이
- ZuulFilter
- Spring Cloud Config
- Java
- 이분 탐색
- 백트래킹
- dp
- 완전 탐색
- 도커
- BFS
- 서비스 디스커버리
- Zuul
- spring cloud
- 유레카
- docker-compose
- 트리
- 구현
- 주울
- 스택
- 이분 매칭
Archives
- Today
- Total
Hello, Freakin world!
[Spring boot] @Value 에 대해서 본문
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.context.SpringBootTest;
import static org.assertj.core.api.Assertions.assertThat;
@SpringBootTest
class ValuetestApplicationTests {
@Value("Default")
private String defaultValue;
@Value("1")
private int one;
@Value("true")
private boolean maybeTrue;
@Value("${hello}")
private String hello;
@Value("${world:default}")
private String world;
@Test
void contextLoads() {
assertThat(defaultValue).isEqualTo("Default");
assertThat(hello).isEqualTo("hello"); // application.properties => hello="hello"
assertThat(world).isEqualTo("default"); // application.properties => don't exist in application.properties file.
assertThat(one).isEqualTo(1);
assertThat(maybeTrue).isEqualTo(true);
}
}
뭐 특별한 기능이 있는건 아니다.
기본적으로는 변수에 값을 할당하기 위한 애너테이션이며, 기본값을 설정하거나 시스템 변수나 spring 환경변수(application.properties파일)에 있는 값에 접근해 할당할 수 있다. 그리고 메서드 레벨에도 사용하는 경우가 있는데 그럴 경우 모든 인수에 @Value에 전달된 String 값을 할당한다.
기본적으로 @Value에는 String 값만을 전달할 수 있지만, 내부의 컨버터가 int, boolean 등의 타입 변환을 시켜주기도 한다.
'Spring boot' 카테고리의 다른 글
[Spring boot] AOP 용어 정리 (0) | 2020.07.16 |
---|---|
[Spring boot] Validation 후, AOP 이용해서 예외처리 하기 (0) | 2020.07.14 |
@RestControllerAdvice 를 이용해서 예외 처리하기 (0) | 2020.07.12 |
[Spring boot] 상황에 맞는 Profile 적용하기 (0) | 2020.06.15 |
[Spring Boot] PropertyEditor 에 대해서(feat. Converter, Formatter) (0) | 2019.12.24 |
Comments