본문 바로가기
Etc/Bug Tracking

[마이바티스 에러] java.lang.IllegalArgumentException: Mapped Statements collection does not contain value

by happy coding! 2018. 2. 5.
반응형

[마이바티스 에러] java.lang.IllegalArgumentException : 

Mapped Statements collection does not contain value





스프링 프로젝트에서 MyBatis를 적용하다가 다음과 같은 에러가 발생할 경우가 있다.


* 에러 메시지 java.lang.IllegalArgumentException : Mapped Statements collection does not contain value





* 원인 


위와 같은 에러가 발생할 경우 여러가지 원인이 있다. 


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 내에 중복 될 경우





[출처] 

http://luceatluxvestra.tistory.com/17

http://daydreamer-92.tistory.com/76

http://daydreamer-92.tistory.com/76 [아는게1도없다]

반응형

댓글