본문 바로가기
PROJECT

[MyBatis]

by 로햐 2022. 3. 17.

resultType=hashmap 사용하기

나는 hashmap으로 받을건데 왜 자꾸 ArrayList로 타입 변환을 할 수 없는지 뜨는가 했더니

selectList 자체가 List형으로 돌려준다는 의미임.

물론 실제 타입은 Object라서 (ArrayList)든 (List)든 강제형변환은 해줘야함

(HashMap)따위의 형태로는 타입 변환이 안됨! DAO에서는 List의 형태로 받는다!

 

mybatis : foreach

오류

<foreach collection="noticeNo" ...중략>

org.apache.ibatis.binding.BindingException: Parameter 'noticeNo' not found. Available parameters are [collection, list]

collection=list로 지정해야함

 

->collection=list로 한 이후 오류구문

java.sql.SQLSyntaxErrorException: ORA-00936: missing expression

내가 넘긴 collection의 이름이 list가 아니라서 오류 뜸

해결법

DAO에서 넘기는 인자의 이름을 list로 바꿈

 

원래 문제는 ajax로 배열 넘기가 문제였음

->jsp에서 ajax 배열 넘기는 방법

traditional:true로 데이터 직렬화를 해서 넘김!!!

$.ajax({
	url:'delete.no',
	type:'post',
	dataType : 'json',
	traditional: true,
	data:{'noticeNo':delList},
	success:function(){
		alert('삭제 성공했습니다.');
	},
	error:function(){
		alert('삭제 실패했습니다.');
	}
})

produces 필요없음!!