mybatis의 hashmap파라미터에 리스트가 있을 경우

배선영·2021년 9월 27일
0

Mybatis에 파람을 넘겨줄 때 파람이 복수개일 경우 parameterType="java.util.HashMap"을 많이들 이용한다.
이를 위해서 자바에서 mybatis로 파라미터를 넘길때는 HashMap("String", "Object") 형식을 이용하여 파라미터를 만들어주는게 편리하다.
value값이 Object이므로 리스트나 문자열 숫자 리스트 등이 들어갈 수 있다.
파라미터로 리스트를 넘겨줬을 경우에는 mybatis에서도 문을 사용하여 넘겨받은 리스트를 순환해줘야 한다.
태그는 collection옵션과 item 옵션이 필수적이다.

collection="{넘겨받은 리스트의 이름}", item={mybatis에서 사용할 배열 요소 이름}
collection 옵션은 순회하려는 리스트의 이름 즉, 자바에서 넘겨준 해쉬맵의 해당리스트가 밸류인 키의 이름이 필요하다.

item옵션은 태그에서 배열의 요소를 사용할 이름을 지정하는 것이다.
기존에도 mybatis에서 파라미터를 #{해쉬맵 키}를 사용하는 것과 같다 item="item"으로 할 경우
태그 내에서 배열의 요소를 #{item}으로 사용하게되는 것이다.

0개의 댓글