반응형
Mapped Statements collection does not contain value for ~ 에러원인
◆ 원인 / 해결
작업하다가 에러가 발생해서 한참 찾았는데 Mapper파일의 namespace에 공백오타가 있어서 매핑이 안되고 있었다.
namespace에 들어가 있던 공백을 제거하니깐 잘 적용 됐다.
참고 에러가 발생하는 이유는 여러 가지가 있지만 주로 아래와 같은 경우에서 많이 발생한다.
- Mapper파일 (xml)에 지정된 id명과 Java의 DAO나 Service단에서 호출한 ID명이 불일치하는 경우
- 위 xml파일 기준으로 <select id="selectProduct" 부분
- Mapper파일 (xml)의 Sql 쿼리에서 참조하는 필드명이 Java단 에서 설정한 필드명과 불일치하는 경우
- 위 xml파일 기준으로 #{number} 부분
- 네임스페이스(namespace)가 불일치하는 경우
- 위 xml파일 기준으로 <mapper namespace="compleproductRegiMapper"> 부분
글 내용 중 잘못된 부분이 있거나, 첨부하실 내용이 있으시면 댓글로 남겨주세요. 공부하는데 많은 도움이 됩니다.
-- 기억의 유효기간은 생각보다 짧다. --
반응형
'▹ 데이터베이스 연동 도구 > 마이바티스 (MyBatis)' 카테고리의 다른 글
[마이바티스] MyBatis 비교연산 시 XML 파싱 오류 (org.xml.sax.SAXParseException) (0) | 2025.01.07 |
---|---|
[마이바티스] MyBatis Mapper NumberFormatException 에러 (1) | 2024.02.09 |