@Value1 @Value가 null 값으로 들어올때 회사에서 개발 중스프링의 @Value 어노테이션으로 property에 저장된 값을 가져오려고 했다.그러나 null pointer Exception이 발생하면서해당 저장 값을 가져오지 못하고 있었다. 원인은 스프링은 static 필드에 @Value 를 지원하지 않기 때문이다.static 필드는 jvm 클래스 로더에 의해 Class Area(=Static, Method)에 런타임에 저장된다.이 시점은 스프링 컨테이너인 ApplicationContext가 로드되기 전이므로,static 필드는 ApplicationContext에 의존적인 @Value가 동작하지 않는다고 한다. (@Autowired도 동일) 해결방법setter 수정자 메서드를 사용하여 static 변수에 property 값을 주입할 수 있다. .. 2024. 1. 15. 이전 1 다음