[SPRING] Spring 응용 프로그램 속성에서 사용자 정의 객체를 가져올 수 있습니까?
SPRINGSpring 응용 프로그램 속성에서 사용자 정의 객체를 가져올 수 있습니까?
application.yaml에서 자신의 객체를 가져 와서 @Value로 내 구성 요소에 바인딩 할 수 있습니까?
모델:
@Data
public class CurrencyPlan {
private String id;
private String basePrice;
private String merchantId;
}
application.yml :
plans:
eur:
id: id
basePrice: 5
merchantId: someid
내가 뭘하려고하는지 :
@Value("${plans.eur}") CurrencyPlan eurPlan
내가 얻는 것 :
java.lang.IllegalArgumentException: Could not resolve placeholder 'plans.eur' in value "${plans.eur}"
이것은 가능한가? 그렇다면 어떻게해야합니까? 나는 아이디어에서 꽤 벗어났다. (
미리 감사드립니다;)
해결법
-
==============================
1.속성을 클래스에 바인딩하려는 경우 @ConfigurationProperties를 사용할 수 있습니다.
속성을 클래스에 바인딩하려는 경우 @ConfigurationProperties를 사용할 수 있습니다.
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html#boot-features-external-config-typesafe-configuration-properties
@ConfigurationProperties (접두사 = "plans.eur") 및 @Component는 CurrencyPlan에 배치됩니다. @EnableConfigurationProperties는 @Configuration 클래스에 배치하는 것이 바람직합니다.
CurrencyPlan 클래스를 종속 클래스에 autowire 할 수 있습니다.
from https://stackoverflow.com/questions/46055112/is-it-possible-to-get-custom-object-from-spring-application-properties by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Websocket - InvalidStateError : 연결이 아직 설정되지 않았습니다. (0) | 2019.05.13 |
---|---|
[SPRING] ModelAndView에서 리디렉션을 사용하는 방법 (0) | 2019.05.13 |
[SPRING] 간단한 스프링 mvc json 서비스에서 출력하기 전에 여분의 빈 {} json 객체가 &&와 함께 나타납니다. (0) | 2019.05.13 |
[SPRING] @Autowired와의 바인딩은 'new'로 시작된 인스턴스 안에서 작업하지 않습니다. (0) | 2019.05.13 |
[SPRING] Spring + Hibernate + Tomcat 종속성 문제 (0) | 2019.05.13 |