순환참조

Stormi·2022년 8월 18일
0

Bug reporting

목록 보기
4/4

순환의존관계 오류

이렇게 따로 만들어주고 컨테이너에 등록한다.

@Bean으로 등록했던 부분을 주석처리한다.

순환참조가 나는 이유

  1. springContainer에서 처음 빈으로 등록하기 위해 객체를 생성해준다. -> 싱글톤!!

  2. 그래서 SecurityConfing를 생성하던 중에

PrincipalOAuth2UserService객체

를 의존하고 있는 것을 알수 있다. 따라서 PrincipalOAuth2UserService를 또 만들어주는데,

  1. ??!! 여기서 문제가 발생!!!
    PrincipalOAuth2UserService에서도 SecurityConfig에서 빈으로 등록한

BCryptPasswordEncoder를 참조중이다.

  1. 즉@@@!!!! 스프링 참조가 순환중이다 -> 오류라는 뜻!!!!

즉, SecurityConfig -> PrincipalOauth2UserService -> 다시 PrincipalOauth2UserService -> SecurityConfig

이렇게 돌고 있기 떄문에

SecurityConfig -> PrincipalOAuth2UserService -> CustomBCryptPasswordEncoder로 구조를 변경하면된다.

0개의 댓글