mybatis 테그문의
- 작성자 :
- 박*선
- 작성일 :
- 2019-07-05 10:12:22
- 조회수 :
- 2,157
- 구분 :
- 기타
- 진행상태 :
- 완료
Q
mybatis에서 동적쿼리를 생성을 하고 있는 상황입니다.
그런데 생성시 List객체 또는 Array객체가 아닌 Map에 담겨서 넘오는는 key값중에 count수 만큼 동적쿼리를 생성하고 싶어서 문의 드립니다.
예를 등록 Map객체에 key : cnt, value:3이라는 정보를 넘겨서
<select id = "sss" parameterType="Map" resultType="Map">
select
// 자바의 for문 형식처럼 mybatis 동적쿼리 생성하는 부분
for(int i<0; i< cnt; i++){ ==> 자바의 for문처럼
a_${i} ,
}
from test
</select>
위의 예문처럼 mybatis에서 동적쿼리를 생성시 자바의 for문처럼 사용할수 있는 방법이 있는지 문의 드립니다.
그런데 생성시 List객체 또는 Array객체가 아닌 Map에 담겨서 넘오는는 key값중에 count수 만큼 동적쿼리를 생성하고 싶어서 문의 드립니다.
예를 등록 Map객체에 key : cnt, value:3이라는 정보를 넘겨서
<select id = "sss" parameterType="Map" resultType="Map">
select
// 자바의 for문 형식처럼 mybatis 동적쿼리 생성하는 부분
for(int i<0; i< cnt; i++){ ==> 자바의 for문처럼
a_${i} ,
}
from test
</select>
위의 예문처럼 mybatis에서 동적쿼리를 생성시 자바의 for문처럼 사용할수 있는 방법이 있는지 문의 드립니다.
A
안녕하세요.
표준프레임워크센터 입니다.
mybatis에서 동적인 쿼리를 만들수 있도록 지원하고 있는데
예를 들면 다음과 같은 형식입니다.
collection="list" 부분에 리스트형 객체를 전달하면 됩니다.
<foreach item="item" index="index" collection="list"
open="(" separator="," close=")">
#{item}
</foreach>
동적 SQL을 작성중에 $를 사용하면
SQL Injection에 취약해지기 때문에
사용하지 않아야 됩니다.
마이바티스 공식 사이트를 보면
자세히 나와 있으니 참고 하시면 됩니다.
http://www.mybatis.org/mybatis-3/ko/dynamic-sql.html
감사합니다.
표준프레임워크센터 입니다.
mybatis에서 동적인 쿼리를 만들수 있도록 지원하고 있는데
예를 들면 다음과 같은 형식입니다.
collection="list" 부분에 리스트형 객체를 전달하면 됩니다.
<foreach item="item" index="index" collection="list"
open="(" separator="," close=")">
#{item}
</foreach>
동적 SQL을 작성중에 $를 사용하면
SQL Injection에 취약해지기 때문에
사용하지 않아야 됩니다.
마이바티스 공식 사이트를 보면
자세히 나와 있으니 참고 하시면 됩니다.
http://www.mybatis.org/mybatis-3/ko/dynamic-sql.html
감사합니다.