반응형
@Value 어노테이션을 통해 클래스 필드에 의존성 주입을 할 경우 객체가 생성되고 난 후 주입된다.
즉, 객체 생성자가 실행되는 시점에선 @Value 값이 null이 되므로 주의해야한다.
대안으로 @Value 로 주입받은 값을 사용할 메소드를 따로 생성하고, @PostConstruct 어노테이션을 표시하여 사용할 수 있다.
@Component("simgRealtimeInsurance")
public class SimgRealtimeInsurance {
@Value("${SIMG_SERVER_URL}")
private String SERVER;
private String URL_DRVING_INFO_SEND;
private String URL_DRVING_INFO_BATCH_SEND;
@Resource(name = "simgHttpClient")
SimgHttpClient httpClient;
@PostConstruct
public void init() {
URL_DRVING_INFO_SEND = SERVER + "/api/v1/driving/in/live";
URL_DRVING_INFO_BATCH_SEND = SERVER + "/api/v1/driving/in/batch";
}
반응형
'자바' 카테고리의 다른 글
[Java] 컬렉션 프레임워크(Collection Framework) (0) | 2021.09.05 |
---|---|
[Java] Enum과 싱글톤(Singleton) (0) | 2021.08.31 |
[Java] 제네릭(Generics) (0) | 2021.08.30 |
[자바] Annotations, 자바에서 메타 데이터를 제공하는 방법 (0) | 2021.08.29 |
[Java] 자바에서 문자열을 다루는 방법 - String (0) | 2021.08.28 |
댓글