Spring Mybatis Error 해결 방법


Spring Mybatis 에러는 제 경험상 5가지만 체크하면 99.8% 정도는? 해결 가능!


Error :  java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for​ ~

이 녀석을 이젠 더 이상 보기 싫다!!!!

 

1. mapper id Check!!

 

mapper 파일 ( 쿼리문을 모아두는 xml파일 ) 에서 <select id='seungje'></select>

seungje가 쿼리문이 호출되는 DAO와 같은 java파일에서 값이 같아야 하는데, 다르면 에러가 발생합니다. 


dao에서 seungje라는 select 쿼리문을 부르고 싶은데 id가 다르니 부를 수 없는 것이죠


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


3. mapper 파일 namespace 가 다를 경우


1번과 비슷한 개념인 것 같습니다 해당 쿼리문을 호출할 때 namespace와 id를 통해 부르게 되는 것이죠

namespace로 mapper 전체를 찾고 id를 통해 그 안에서 요청한 쿼리를 찾게 되는 것입니다.


4. mapper에 정의된 namespace 중복될 경우


당연히 다른 경우에 문제가 되면, 중복될 경우에도 문제가 되겠죠? 2개 중에 어떤 걸 찾아야 할지 모르니까요~



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


MyBatis 설정파일로써 config dtd를 입력하고 밑에 <configuration> </configuration> 태그를 만들어 주지 않으면 


에러가 발생합니다 반드시!! 빈 태그라도 만들어 주셔야 합니다. 


추가적으로 설정은 config이고 쿼리문을 모아두는 곳은 mapper입니다 2개의 dtd가 다릅니다 꼭 확인하세요

저는 이것 때문에 하루를 날렷네요 ㅠ





쿼리문을 모아두는 mapper 파일





MyBatis 설정을 개별적으로 관리하는 설정파일


빨간색 상자 부분을 잘 확인하셔야 합니다 






blog 승제노트






↓ 공감, 댓글 부탁드려요 ↓

저작자 표시 비영리
신고
블로그 이미지

SeungJe SeungJeNote

초보 개발자의 IT 정보 노트!!!

댓글을 달아 주세요

Spring 설치 방법


Spring을 설치하는 방법은 다양합니다 허나, Marketplace를 이용하면 보다 간편하기 때문에 

이번글은 Eclipse Marketplace를 이용하여 설치 하겠습니다.









이클립스 실행 후 상단 Help 탭 아래 Eclipse Marketplace 클릭








Find에 sts를 넣고 검색

위에 보이는 것과 같이 sts는 Spring Toll Suite 입니다 








Confirm 클릭








설치 기다리기!








I accept the terms of the License agreements 클릭 -> Finish








설치 기다리기!








정상적으로 설치가 되면 restart를 물어보고 Yes를 클릭하면 Eclipse가 restart 됩니다.


이후 new Project 생성 시 Spring 프로젝트를 생성할 수 있습니다.~~






blog 승제노트






↓ 공감, 댓글 부탁드려요 ↓

저작자 표시 비영리
신고
블로그 이미지

SeungJe SeungJeNote

초보 개발자의 IT 정보 노트!!!

댓글을 달아 주세요

Dependency 검색 및 추가하기


Spring으로 작업하다 보면 Mybatis, Oracle, MariaDB 등을 사용해야 하는대, 가장 편리한

Maven Plugin인 Dependency를 추가하는 방법으로 많이 사용하고 있습니다.


아래 페이지에서 모든 종류의 dependency와 버전별로 관리 되고 있습니다. 


http://mvnrepository.com/






blog 승제노트






↓ 공감, 댓글 부탁드려요 ↓

저작자 표시 비영리
신고
블로그 이미지

SeungJe SeungJeNote

초보 개발자의 IT 정보 노트!!!

댓글을 달아 주세요