반응형
c:if, c:choose 태그와 fn:length, fn:contain 등의 함수 정리
- <c:if>
- if else는 없다 필요하다면 choose 태그를 사용해야한다.
<c:if test="${num ge 0}">
<c:out value="${str}" />
</c:if>
- <c:choose>
- 해당 태그는 조건에 따른 다중 분기처리가 가능하다.
<c:choose>
<c:when test="${num eq 0}">
<c:out value="${str0}" />
</c:when>
<c:when test="${num eq 1}">
<c:out value="${str1}" />
</c:when>
<c:when test="${num eq 2}">
<c:out value="${str2}" />
</c:when>
<c:choose>
JSTL 함수
https://docs.oracle.com/javaee/5/jstl/1.1/docs/tlddocs/fn/tld-summary.html
오라클 공홈에 공유된 정보이다.
- ${fn:contains(str, str)}
- return boolean
- 대소문자 구분.
${fn:contains("HelloWorld!!", "World")} // true
${fn:contains("HelloWorld!!", "world")} // false
- ${fn:containsIgnoreCase(str, str)}
- return boolean
- 대소문자 구분없음.
${fn:containsIgnoreCase("Hello World!!", "World")} // true
${fn:containsIgnoreCase("Hello World!!", "world")} // true
- ${fn:endsWith(str, str)}
- return boolean
- 첫번째 파라미터의 값이 두번째 파라미터의 값으로 끝나면 true
${fn:endsWith("Hello World!!", "!!")} // true
${fn:endsWith("Hello World!!", "World")} // false
- ${fn:escapeXml(str)}
- return str
- XML, HTML의 ' < , > * "" 문자들을 < > & ' " 으로 변경
<c:out value="${fn:escapeXml('<>')}"/> // <>
- ${fn:indexOf(str, str)}
- return int
- 첫번째 문자열중 두번째파라미터의 값의 위치 반환.
${fn:indexOf("Hello World!!", "W")} // 6
- ${fn:join(arr[], str)}
- return str
- 배열의 값들을 두번째 파라미터의 값으로 이어서 연결한다.
texts[] = {"Hello", "World", "!!"}
<c:out value="${fn:join(texts, '_')}"/> // Hello_World_!!
- ${fn:length(obj)} or ${fn:length(str)}
- return int
- 배열이나 컬렉션의 개수를 반환한다.
<c:set var="texts" value="Hello Wor"/>
${fn:length(texts)} // 9
${fn:length("Hello World!!")} // 13
- ${fn:replace( str, str, str)}
- return str
- 첫번째 파라미터내에 있는 두번째 파라미터 str을 세번째 파라미터 str로 변경한다.
${fn:replace("Hello work!!", "work", "World")} // Hello World!!
- ${fn:split(str, str}
- return arr[]
<c:set var="texts" value="${fn:split('Hello World !!', ' ')}"/>
texts --> { "Hello", "World", "!!" }
- ${fn:startsWith(str, str)}
- return arr[]
- 첫 파라미터의 시작이 두번째 파라미터로 시작하면 true
${fn:startsWith("Hello World!!", "Hello")} // true
${fn:startsWith("Hello World!!", "llo")} // false
- ${fn:substring(str, int, int)}
- return str
- 첫 파라미터 str의 시작 인덱스 (두번쨰 파라미터) 마지막 인덱스 (세번쨰 파라미터) 의 값을 리턴한다
<c:set var="text" value="Hello World!!"/>
${fn:substring(text, 0, 4)} // Hello
- ${fn:substringAfter(str, str)}
- return str
- 첫 파라미터 str에서 두번째 파라미터의 값이 있는 부분부터 끝까지 리턴
<c:set var="text" value="Hello World!!"/>
${fn:substringAfter(text, "Wor")} // ld!!
- ${fn:substringBefore(str, str)}
- return str
- 첫 파라미터 str에서 두번쨰 파라미터 값이 있는 이전의 부분을 리턴
<c:set var="text" value="Hello World!!"/>
${fn:substringBefore(text, "Wor")} // Hello
- ${fn:toLowerCase(str)}
- return str
- 모두 소문자로 리턴
<c:set var="text" value="Hello World!!"/>
${fn:toLowerCase(text)} // hello world!!
- ${fn:toUpperCase(str)}
- return str
- 모두 대문자로 리턴
<c:set var="text" value="Hello World!!"/>
${fn:toUpperCase(text)} // HELLO WORLD!!
- ${fn:trim(str)}
- return str
- 앞뒤 공백을 제거한다.
<c:set var="text" value=" Hello World!! "/>
${fn:length(text)} // 25
<c:set var="text" value="${fn:trim(text)}"/>
${fn:length(text)} // 13
2020/04/19 - [Delvelopment/Etc.] - JSP/JSTL 문법 정리 (==, !=, <, > 등 ) 사용법
반응형
댓글