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을 해체해주면 된다.
이 체크를 해제하면 더 이상 스펠링 체크를 하지 않기 때문에 경고가 뜨지 않게 된다.
이 경우는 다음의 블로그에서 도움을 얻었다.
이클립스 xml파일 - The word '???' is not correctly spelled 경고
- 이클립스 xml파일 - The word '???' is not correctly spelled 경고 - xml을 수정하다보면 위와 같은 경고를 볼 수 있습니다. ex) 말 그대로 스펠링을 인식을 못 해서 생기는 경고입니다. 프로그램을 돌리는데
crazykim2.tistory.com
또한 아래 블로그에서 많은 도움을 얻었습니다.
감사합니다.
[마이바티스 에러] 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
[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
'Spring Framework > Spring' 카테고리의 다른 글
[Spring] Unable to locate persistence units 에러 (0) | 2021.01.29 |
---|---|
[Spring] 메이븐 프로젝트 생성 maven-archetype-quickstart (0) | 2021.01.29 |
[SpringBoot] target matching "[xX][mM][lL]" is not allowed 에러 발생 (2) | 2021.01.29 |
[SpringBoot] 이클립스에서 Mybatis 사용하기 (2) | 2021.01.28 |
[Spring] JAXB2 API 사용중 어노테이션을 썼지만, import가 안될 때 !! (0) | 2021.01.28 |