봉봉의 개인 블로그

2018-03-02(JSTL fn 함수) 본문

입사후 공부한내용

2018-03-02(JSTL fn 함수)

봉봉이네 2018. 3. 2. 16:19

1. 함수태그 (functions)
 - JSTL 은 EL 에서 사용할수 있는 함수태그를 제공한다.


 함수

설명 

length(obj) 

obj가 Conllection인 경우 저장된 항목의 개수를,문자인 경우 문자열의 길이를 반환한다. 

toUpperCase(str) 

str을 대문자로 변환 

toLowerCase(str) 

str을 소문자로 변환 

substring(str,idx1,idx2) 

str.substring(idx1,idx2)의 결과를 반환, idx2가 -1dlf ruddn str.substring(idx1)과 동일 

substringAfter(str1,str2) 

str1에서 str1에 포함되어 있는 str2 이후의 문자열을 구함 

substringBefore(str1,str2) 

str1에서 str1에 포함되어 있는 str2 이전의 문자열을 구함 

trim(str) 

str 좌우의 공백 문자를 제거 

replace(str,src,dest) 

str에 있는 src를 dest로 변환 

indexOf(str1,str2) 

str1에서 str2가 위치한 인덱스를 구함 

startWith(str1,str2) 

str1이 str2로 시작할 경우 true, 그렇지 않을 경우 false를 반환 

endsWith(str1,str2) 

str1이 str2로 끝나는 경우 true, 그렇지 않을 경우 false를 반환 

contains(str1,str2) 

str1이 str2를 포함하고 있을 경우 true를 반환 

containsIgnoreCase(str1,str2) 

대소문자 구문없이 str1이 str2를 포함하고 있을 경우 true를 반환 

split(str1,str2) 

str2로 명시한 글자를 기준으로 str1을 분리해서 배열로 반환 

join(array,str2) 

array에 저장된 문자열을 합침, 각 문자열의 사이에는 str2가 붙음 

escapeXml(str) 

XML의 객체 참조에 해당하는 특수문자를 처리함 




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
 
<!-- functions.jsp --> 
<%@page import="java.util.HashMap"%> 
<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> 
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"
<html
<head
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR"
<title>functions
</title
</head
<body
    <% 
        HashMap map = new HashMap(); 
        map.put("1""1"); 
        map.put("2""2"); 
        map.put("3""3"); 
        map.put("4""4"); 
        map.put("5""5"); 
    %>    
    <c:set var="map" value="<%= map %>" /
    <c:set var="str1" value="갱짱(Gz) 블로그, http://gangzzang.tistory.com/"/
    <c:set var="str2" value="블로그" /
    <c:set var="tokens" value="1,2,3,4,5,6,7,8,9,10" /
 
    <h1>Function 태그
    </h1> length(map) : ${ fn:length(map) }
    <br> length(str1) : ${ fn:length(str1) }
    <br> toUpperCase(str1) : ${ fn:toUpperCase(str1) }
    <br> toLowerCase(str1) : ${ fn:toLowerCase(str1) }
    <br> substring(str1, 19, 40) : ${ fn:substring(str1, 19, 40) }
    <br> substringAfter(str1, str2) : ${ fn:substringAfter(str1, str2) }
    <br> substringBefore(str1, str2) : ${ fn:substringBefore(str1, str2) }
    <br> replace(str1, src, dest) : ${ fn:replace(str1, " ", "^") }
    <br> indexOf(str1, str2) : ${ fn:indexOf(str1, str2) }
    <br> startsWith(str1, str2) : ${ fn:startsWith(str1, '갱짱') }
    <br> endsWith(str1, str2) : ${ fn:endsWith(str1, '/') }
    <br> contains(str1, str2) : ${ fn:contains(str1, str2) }
    <br> containsIgnoreCase(str1, str2) : ${ fn:containsIgnoreCase(str1, str2) }
    <br
    <c:set var="array" value="${ fn:split(tokens, ',') }" /
    join(array, "-") : ${ fn:join(array, "-") }
    <br> escapeXml(str1) : ${ fn:escapeXml(str1) } 
</body
</html
<!-- 
    실행결과 
    Function 태그 
    length(map) : 5 
    length(str1) : 41 
    toUpperCase(str1) : 갱짱(GZ) 블로그, HTTP://GANGZZANG.TISTORY.COM/ 
    toLowerCase(str1) : 갱짱(gz) 블로그, http://gangzzang.tistory.com/ 
    substring(str1, 19, 40) : gangzzang.tistory.com 
    substringAfter(str1, str2) : , http://gangzzang.tistory.com/ 
    substringBefore(str1, str2) : 갱짱(Gz) 
    replace(str1, src, dest) : 갱짱(Gz)^블로그,^http://gangzzang.tistory.com/ 
    indexOf(str1, str2) : 7 
    startsWith(str1, str2) : true 
    endsWith(str1, str2) : false 
    contains(str1, str2) : true 
    containsIgnoreCase(str1, str2) : true 
    join(array, "-") : 1-2-3-4-5-6-7-8-9-10 
    escapeXml(str1) : 갱짱(Gz) 블로그, http://gangzzang.tistory.com/ 
-->
 
cs


Comments