출처 : http://blog.naver.com/whily312?Redirect=Log&logNo=100102333320
조건이 두개이상인 경우 가독성이 떨어진다.
예) 직책이 사장이고 월급이 비어있으면 사장의 월급은 100이다.
<isEqual property="직책" comaperValue="사장">
<isNull property="월급">
사장 월급 = "100"
</isNotNull>
</isEqual>
바이너리 조건적인 요소
prerpend - statement에 붙을 오버라이딩 가능한 SQL 부분(옵션)
property - 비교되는 프라퍼티(필수)
compareProperty - 비교되는 다른 프라퍼티(필수 또는 compareValue)
compareVale - 비교되는 값(필수 또는 compareProperty)
<isEqual> - 프라퍼티와 값 또는 다른 프라퍼티가 같은지 체크.
<isNotEqual> - 프라퍼티와 값 또는 다른 프라퍼티가 같지 않은지 체크
<isGreaterThan> - 프라퍼티와 값 또는 다른 프라퍼티보다 큰지 체크
<isGreaterEqual> - 프라퍼티와 값 또는 다른 프라퍼티보다 크거나 같은지 체크.
<isLessThan> - 프라퍼티와 값 또는 다른 프라퍼티보다 작은지 체크.
- 예)<isLessEqual prepend = "AND" property="age" compareValue="18"> ADOLESCENT = 'TRUE'</isLessEqual>
단일 조건적인 요소
prepend - statement에 붙을 오버라이딩 가능한 SQL부분(옵션)
property - 체크 되기 위한 프라퍼티(필수)
<isPropertyAvailable> - 프로퍼티가 유효한지 체크(이를테면 파라미터빈의 프라퍼티이다.)
<isNotPropertyAvailable> - 프라퍼티가 유효하지 않은지 체크(이를테면 파라미터의 프라퍼티가 아니다.)
<isNull> - 프라퍼티가 null인지 체크
<isNotNull> - 프라퍼티가 null이 아닌지 체크
<isEmpty> - Collection, 문자열 또는 String.valueOf() 프라퍼티가 null이거나 empty("" or size() < 1)인지 체크
<isNotEmpty> - Collection, 문자열 또는 String.valueOf() 프라퍼티가 null이 아니거나 empty("" or size() < 1)인지 체크
- 예) <isNotEmpty prepend="AND" property="firstNAme">FIRST_NAME=#firstName#</isNotEmpty>
다른 요소들
Parameter Present : 파라미터 객체가 존재하는지 체크
prepend - the statement에 붙은 오버라이딩 가능한 SQL부분(옵션)
<isParameterPresent> - 파라미터 객체가 존재(not null)하는지 보기위해 체크.
<isNotParameterPresent> - 파라미터 객체가 존재하지(null)않는지 보기위해 체크.
- 예) <isNotParameterPresent prepend="AND">EMPLOYEE_TYPE='DEFAULT'</isNotParameterPresent>
Iterate : 이태그는 collection을 반복하거나 리스트내 각각을 위해 몸체부분을 반복한다.
prepend - the statement에 붙을 오버라이딩 가능한 SQL부분(옵션)
property - 반복되기 위한 java.util.List타입의 프라퍼티(필수)
open - 반복의 전체를 열기 위한 문자열, 괄호를 위해 유용하다.(옵션)
close - 본복의 전체를 닫기 위한 문자열, 괄호를 위해 유용하다.(옵션)
conjunction - 각각의 반복 사이에 적용되기 위한 문자열, AND 긜고 OR을 위해 유용하다.(옵션)
<iterate> - java.util.List 타입의 프라퍼티 반복
- 예) <iterate prepend="AND" property="userNAmeList" open="(" close=")" conjunction="OR">
username = #userNameList[]#
</iterate>
- 주의 : iterator요소를 사용할 때 리스트 프라퍼티의 끝에 중괄호 []를 포함하는 것은 중요하다.
중괄호는 문자열처럼 리스트를 간단하게 출력함으로부터 파서를 유지하기 위해 리스트처럼 객체를 구별한다.
'Programming > Code helper' 카테고리의 다른 글
| SqlMap 다이나믹 쿼리 (0) | 2011/07/05 |
|---|---|
| Eclipse - Dynamic Web Project로 변환하는 방법 (0) | 2011/06/27 |
| XP Style + Vista 권한 관련 Manifest 사용 (0) | 2008/11/21 |
| SystemParametersInfo... (0) | 2008/11/06 |
댓글을 달아 주세요