2019.02.18 JSTL - JSTL core

2019. 2. 18. 12:26JSP

# JSPL라이브러리에 추가

tomcat.apache.org/taglibs/standard/ 로 접속 




 JSP 페이지에 태그라이브러리 등록

1
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
cs





#1 JSPL core 라이브러리 태그 종류


출력 태그 : <c:out>

★ 변수 설정 및 삭제 태그 : <c:set>, <c:remove>

★ 예외 처리 태그 : <c:catch>

★ 조건 처리 태그 : <c:if>, <c:choose>, <c:when>, <c:otherwise>

★ 반복 처리 태그 : <c:forEach>, <c:forTokens>

★ 페이지 처리 태그 : <c:import>,  <c:redirect>, <c:url>, <c:param>




#2 사용 예제(1)

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
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSPL core 라이브러리</title>
</head>
<body>
    <c:set var ="test" value="Hello JSTL!!"/>
    <h3>&lt;c:set&gt;사용후 : <c:out value="${test}"></c:out></h3>
    <c:remove var="test"/>
    <h3>&lt;c:remove&gt;사용후 : </h3> <c:out value="${test}"></c:out>
    
    <c:catch var ="err">
        <%=10/0 %>
    </c:catch>
    <h3>&lt;c:catch&gt;로 잡아낸 오류 : <c:out value="${err}"></c:out></h3>
    
    <c:if test="${5<10}">
        <h3>5는 10보다 작다.</h3>
    </c:if>
    
    <c:if test="${6+3==11}">
        <h3>6+3은 11이다.</h3>
    </c:if>
    
    <c:choose>
    <c:when test="${5+10==50 }">
        <h3>5+10은 50이다.</h3>
    </c:when>
    <c:otherwise>
        <h3>5+10은 15이다.</h3>
    </c:otherwise>
    </c:choose>
</body>
</html>
cs


jspl

#3 사용예제(2)


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
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSPL core 라이브러리2</title>
</head>
<body>
    <% //<c:forEach var="변수명" begin="시작인덱스" end="끝인덱스" step="증감식" 
        //  items="객체명 "> %>
    <c:forEach var="test" begin="1" end="10" step="2">
        <b>${test}</b>&nbsp;
    </c:forEach>
    <br>
    
    <// <c:forTokens var="변수명" items="객체명" delims="구분자" begin="시작인덱스" end="끝인덱스" step="증감식" > %>
    <c:forTokens var="alp" items="a,b,c,d,e,f,g,h,i,j,k" delims=",">
        <b>${alp}</b>&nbsp;
    </c:forTokens>
    <br>
    
    <c:set var="data" value="홍길동,김길동,박길동,최길동"/>    
    <c:forTokens var="tokens" items="${data}" delims=",">
        <b>${tokens}</b>&nbsp;
    </c:forTokens>
    <br>
</body>
</html>
cs

##응용 -> 이렇게 사용 할 수도 있다.

1
2
3
<c:forEach var="count" begin="1" end="10">
        <h${count}>글자크기</h${count}>
    </c:forEach>
cs