728x90
이번 포스팅은 회사에서 코딩하다가 해결한 사항이라서 코드는 직접 올리지 못하지만 아래와 같이 처리했다는 걸
기록용으로 남겨보려고 한다.
// 해당 코드는 예시를 들어서 설명하기 위한 코드
/*
* application.yml
* /
moomin:
url : sg-moomin.tistory.com
/*
* Class
* /
@Component
public class moomin(){
@Value("${moomin.url}")
private String url;
public string main(){
return url;
}
}
일단 위의 코드는 예시임으로 정확하지 않을 수 있다.
위의 소스만 봤을 때는 사실 문제 될 사항이 없다.
컴포넌트 어노테이션을 통해 스프링 DI도 연결한 상태임으로 null이 리턴된다면 해당 클래스를 호출하는 부분을 봐야한다.
내가 오류를 범했던 부분은 New로 해당 클래스를 선언하여 발생하였다.
당연하게도 @Value는 Bean으로 관리됨으로 New로 클래스를 생성하면 안되는 것이였다.
따라서 해당 클래스를 호출하는 부분에 대해 @Autowired로 모든 로직을 변경해주면 해당 문제는 해결된다.
728x90