iBatis iterate문 태그
- property : 파라미터명 - 반복돌릴 대상들이 들어있는 리스트
- prepend : 쿼리로 쓰일 문자 - iterate문 전에 쓰인다 (AND, IN, WHERE 컬럼명 IN 등)
- open : 구문이 시작될때 삽입할 문자열
- close : 구문이 종료될때 삽입할 문자열
- conjunction : 반복되는 사이에 출력할 문자열
업무에서 활용해야해서 엄청 찾아봤는데 보통 AND, OR, IN 문을 쓰지
나처럼 해당되지않는 것을 찾는 NOT IN 용으로는 iterate 쓴 예문이 없어서 시행착오 많이했다.
"AND chktype NOT IN" <- 쿼리 부분을 prepend 으로 넣으니까 안되더라. 웬만하면 그냥 쿼리 쓰자.
-- DELETE문이나 SELECT문 쓰면 된다
DELETE
FROM tb_sample
WHERE userId = #userId#
<isNotEmpty property="chkList">
AND chktype NOT IN
<iterate property="chkList" open="(" close=")" conjunction=",">
#chkList[]#
</iterate>
</isNotEmpty>
Ref
'Language > JAVA' 카테고리의 다른 글
Stream API 2 : Collection 합 구하기 (1) | 2024.05.31 |
---|---|
테스트 도구 JUnit5 (0) | 2024.03.14 |
Stream API (1) | 2024.02.27 |
[Java] Request Parameter 출력 (0) | 2024.01.15 |
[JAVA] 반복문에서 배열요소 삭제 (2) | 2023.11.02 |