Spring Framework/Spring

[SpringBoot] java.lang.IllegalArgumentException : Mapped Statements collection does not contain value 에러

Razelo 2021. 1. 29. 10:50

mybatis를 통해 원하는 결과를 콘솔창에 출력해서 보려고 하는 중인데 java.lang.IllegalArgumentException 에러가 발생했다. 세부 사항을 보니 Mapped Statements collection does not contain value 라고 뜨는 것을 확인할 수 있었다. 

 

이번 오류는 모두 오타로 인함이었다. 이전 포스팅과 연계된 포스트인데, 이전 포스팅에서는 xml문서에서 첫라인에 띄어쓰기가 들어가서 발생한 문제였다. 

 

이번경우는 mapper에 있는 namespace에 #이 들어간 것이었다. 저 # 때문에 인식을 하지 못한 것이다. 

 

 

 

아 그리고 sql 구문을 써줄 때 예를 들어서 

 

insert into board(seq,title,writer,content) values((select nvl(max(seq),0)+1 from board),#{title},#{writer},#{content}

 

이런 구문이 있다고 했을 때 (나같은 경우는 seq 그러했다. ) 특정 단어에 언더라인이 그어지면서 경고표시가 뜨면서 그 단어가 뭘 의미하는 지 해석하지 못했다고 이클립스에서 표시해주는 경우가 있다.  이때에 이게 신경쓰인다면 

 

window -> preferences에 들어가고

 

general -> editors -> text editors -> spelling 에 들어가서 enable spell checking을 해체해주면 된다. 

 

이 체크를 해제하면 더 이상 스펠링 체크를 하지 않기 때문에 경고가 뜨지 않게 된다. 

 

이 경우는 다음의 블로그에서 도움을 얻었다. 

 

crazykim2.tistory.com/330

 

이클립스 xml파일 - The word '???' is not correctly spelled 경고

- 이클립스 xml파일 - The word '???' is not correctly spelled 경고 - xml을 수정하다보면 위와 같은 경고를 볼 수 있습니다. ex) 말 그대로 스펠링을 인식을 못 해서 생기는 경고입니다. 프로그램을 돌리는데

crazykim2.tistory.com

 

또한 아래 블로그에서 많은 도움을 얻었습니다. 

 

감사합니다. 

yunyoung1819.tistory.com/25

 

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

[마이바티스 에러] java.lang.IllegalArgumentException : Mapped Statements collection does not contain value 스프링 프로젝트에서 MyBatis를 적용하다가 다음과 같은 에러가 발생할 경우가 있다. * 에러 메시지 java.lang.Il

yunyoung1819.tistory.com

jaeu0608.tistory.com/75

 

[Error : Mybatis] Mapped Statements collection does not contain value for...

MyBatis에서 Mapped Statements collection does not contain value for... 이라는 에러가 떳다. 어떤 에러인지는 알고있었지만select은 되는데 왜 insert문만 안되는거야 하면서 뭔가 문제냐고 하면서 보았다. 원인은M

jaeu0608.tistory.com

 

반응형