[Mybatis] Mapped Statements collection does not contain value for 경로

가이드문구

Mapped Statements collection does not contain value for ~

개발자들이 개발을 하다보면, 종종 Mapped Statements ~ 오류를 볼 수가 있습니다.

이런 경우 어떻게 해결해야 하는지 방법을 알려드릴께요.

마이바티스 프로그래밍 원리와 활용, 에이콘출판 열혈강의 자바 웹 개발 워크북:MVC 아키텍처 마이바티스 스프링으로 만드는 실무형 개발자 로드맵, 프리렉


1. mapper id가 다를경우

   - mapper파일(MyBatis의 쿼리문을 등록한 XML파일)에 select id= 에 id와 

     mapper파일에 직접 접근하는 java파일(DAO나 service)에 적어놓은 id값이 다른 경우 

2. Parameter와 bean의 필드명이 틀린 경우

3. mapper파일(MyBatis의 쿼리문을 등록한 XML파일)에 정의된 네임스페이스(namespace)와 

   mapper파일에 직접 접근하는 java파일(DAO나 service)에서 호출하는 네임스페이스(namespace)가 다를 경우

4. MyBatis config파일에 mapper가 정의가 되어 있지 않거나 Spelling이 틀린 경우

5. mapper에 정의된 namespace 명칭이 같은 Application 내에 중복 될 경우


가장 많이 발생하는 경우가 mapper id가 다른 경우 일꺼에요.

repository의 id와 mapper 파일의 id 스펠링도 꼭 확인하세요.

작성자 소개
초이 프로필
WrapUp 블로거

초이

반려견을 좋아하고, 차를 좋아하고, 여행을 좋아하고, 맛집을 찾아 즐기는 웹 개발자 입니다^^