[Spring]에러는 스프링에서 빈(Bean)을 생성하려고 할 때, 해당 빈이 의존하는 빈이 존재하지 않아서 발생하는 에러

0cean·2023년 4월 14일
0

개인 토이프로젝트 개발 중 신청서관련 api 개발중 생긴 문제 "신청서 작성" 까지는 잘 실행이 되었었는데 갑자기 신청서 조회 Service,Contoller,Mapper를 추가하니 프로젝트가 빌드가 안되기 시작했다.

위 코드는 신청서 관련 Service 클래스

위 코드는 신청서 관련 Repository(Mapper)

위 코드는 신청서 관련 Controller

위 코드는 Rest api로 개발 중 이지만 아직 프론트 개발은 시작하지 않아서 단순 html 렌더링을 위한 View Controller

대망의 에러 메시지

Error creating bean with name 'applicationController' defined in file [C:\Users\KT\Desktop\DNLab\build\classes\java\main\com\example\dnlab\domain\application\controller\ApplicationController.class]: Unsatisfied dependency expressed through constructor parameter 0;

도대체 어떤 점이 문제인지 알 수가 없었음.. url 매핑 문제인가 싶어 여러번 수정도 해봤고, 혹시나 해서 신청서 조회 관련 메소드를 전부 주석처리 했는데도, 갑자기 오류가 나서 잘되던 프로젝트가 빌드 자체가 안되서 머리가 아팠다.. (막막해져서 자존감이 팍 떨어졌음..)



그러다가 생각을 너무 깊게 안했던 탓인지 신청서와 관련된게 하나가 더 있다는걸 찾음

바로 mapper 클래스와 연결할 mapper.xml 파일!! 이 코드는 수정 후지만,

이것이 수정 전 코드 resultType을 자세하게 선언을 안해줘서 mapper.xml 내에서 application을 읽어 오지못해 전달을 못해줘서 생기는 오류 였던것.. 수정 하고나니 정상적으로 빌드도 잘되고 신청서 목록도 잘 받아와졌다!! (생각을 깊게 안해서 너무 질질 끌렸다.. 6시간정도..)

이 경험을 토대로.. 앞으론 도메인 관련 코드 뿐 아니라. resource 코드도 잘 봐야겠다는걸 느꼇다.. 앞으론 크게크게 봐야지..

profile
주도적인 학습으로 성장하는 개발자가 되겠습니다

0개의 댓글