빈으로 사용될 객체에서 스프링 컨테이너에 접근해야 한다거나, 빈 객체에서 로그를 기록할 때 빈의 이름을 남기고 싶다면 다음의 두 인터페이스를 구현하면 된다. ApplicationContextAware : 초기화 과정에서 컨테이너(ApplicationContext)를 전달받는다. BeanNameAware : 초기화 과정에서 빈 이름을 전달받는다. ApplicationContextAware 인터페이스를 구현한 클래스는 setApplicationContext() 메서드를 통해서 컨테이너 객체를 전달받는다. 전달받은 컨테이너를 필드에 보관 후, 이를 이용해서 다른 빈 객체를 구하거나 컨테이너가 제공하는 기능(이벤트 발생, 메시지 구하기)을 사용할 수 있다. public class WorkScheduler imp..