Dynamic Query Attribute
속성 명 | 설명 |
prepend | 요소의 내용 가장 앞에 출력 |
property | 파라미터(Parameter)의 값을 비교할때 사용 |
removeFirstPrepend | 처음 내용을 출력하는 하위 요소의 prepend값의 출력 여부 |
compareProperty | 비교할 다른 매개변수명 |
compareValue | 비교대상이 될 값 |
Dynamic Query SQL
태그 | 설명 |
<isEqual> | property 값이 같을때만 쿼리 실행 ex ) <isEqual prepend="AND" property="useFl" compareValue="Y"> |
<isNotEqual> | property 값이 같지 않을 때만 쿼리 실행 ex ) <isNotEqual prepend="AND" property="useFl" compareValue="Y"> |
<isGreaterThan> | property의 값이 비교값보다 클경우 쿼리를 실행합니다. ex ) <isGreaterThan prepend="AND" property="user_age" compareValue="20"> |
<isGreaterEqual> | property의 값이 비교값보다 같거나 클경우 쿼리를 실행합니다. ex ) <isGreaterEqual prepend="AND" property="user_age" compareValue="20"> |
<isLessEqual> | property의 값이 비교값보다 작거나 같을 경우 쿼리를 실행합니다. ex ) <isLessEqual prepend="AND" property="user_age" compareValue="20"> |
<isNull> | property 값이 null일 경우 쿼리 실행 |
<isNotNull> | property 값이 null이 아닐 경우 쿼리 실행 |
<isEmpty> | property값이 비어있을경우 쿼리를 실행합니다. |
<isNotEmpty> | property값이 비어있지 않을 경우 쿼리를 실행합니다. |
<isPropertyAvailable> | property값이 유효할 경우 쿼리를 실행합니다. |
<isNotPropertyAvailable> | property값이 유효하지 않을 경우 쿼리를 실행합니다. |
<iterate> |
배열 타입의 파라메터를 받을 때 활용합니다. 배열의 값을 빼내어 콤마로 구분하여 괄호 '(' , ')' 내에 넣게 되죠. ex) ('20', '21', '22', '33') |
<dynamic> |
하위 태그에 일치되는 내용이 존재할 경우 where절을 붙인다. 가장 처음 일치요소의 prepend="AND" 는 생략된다. ex) <select id="getUserList" resultClass="UserModel"> SELECT * FROM T_USER_INFO <dynamic prepend="WHERE"> <isNotNull property="user_id" prepend="AND"> user_id = #user_id# </isNotNull> </dynamic> </select> user_id 파라메터 값 test1234이라면 <isNotNull >태그의 prepend는 생략되고 WHERE 절이 붙어 WHERE user_id = #user_id# 쿼리가 실행된다.
|
iBatis 관련 자료 : https://ibatis.apache.org/docs/dotnet/datamapper/ch03s09.html
'IT > Ibatis' 카테고리의 다른 글
[Ibatis] <selectKey> 사용 예제 (0) | 2020.10.11 |
---|---|
[Ibatis] Ibatis 설정 (0) | 2020.10.04 |
[Ibatis] Ibatis 사용법 및 예제 (0) | 2020.09.29 |
[Ibatis] Ibatis(아이바티스) 개념 (0) | 2020.09.28 |