springboot 차단기 @Autowired는null로 해결

오늘 문제를 만났습니다. 사용자 정의 차단기에서 @Autowaire 주석을 사용하여 jpa의dao를 주입하였는데 주입할 수 없습니다. 주입한dao는 비어 있습니다. 자료를 찾아보고 해결 방안은 다음과 같습니다.
문제의 원인
차단기가 불러오는 시간은springcontext 이전이기 때문에 차단기에 자연스럽게null로 주입합니다
파일 해결
spring 프로필에 이렇게 쓰기
 @Bean
    public HandlerInterceptor getMyInterceptor(){
        return new MyInterceptor();
    }

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(getMyInterceptor());
        super.addInterceptors(registry);
    }

bean 주석을 사용하여 미리 불러오면 성공할 수 있습니다.

좋은 웹페이지 즐겨찾기