오늘 또 하나 배웠다. 하드코딩된 부분을 application.yml파일에서 변수로 사용하려 했는데, @value 어노테이션이 계속 먹히지 않고 null만 찍혔다. profile이 제대로 작동하지 않은 줄 알았는데 아니었다. 원인은 해당 클래스가 new로 생성된 객체였기 때문이었다. @value 어노테이션은 Spring을 사용하는 것이기 때문에 컨테이너에 등록되어있어야 한다. 그런데 new로 생성되면 새로운 객체가 되기 때문에 적용이 될 수 없다. 또 한가지 💡 내가 @value를 사용하려는 클래스는 Spring을 사용하는 구간이 아니다. 그렇기 때문에 순수 자바로 이루어진 부분이기 때문에 어노테이션을 활용할 수 없었다.