본문 바로가기

기존카테고리/JSP

JSTL

[JSTL(JSP Standard Tag Library)]

 JSP 파일의 복잡함의(HTML과 함께 사용) 단점을 보완하고자 만든 태그라이브러리를 의미한다.

 

 톰캣에는 JSTL이 포함되어 있지않음. 따라서, 별도로 설치를 해야한다.

 

 JSTL 다운 : http://jakarta.apache.org/ 접속 후 Taglibs 선택

 

 - JSTL에서 제공하는 라이브러리

   . Core : 변수선언, 실행의 흐름 제어기능, 다른 JSP페이지로 제어를 이동하는 기능

   . formatting : 숫자, 날짜, 시간 형식을 지정, 다국어 지원 기능 

   . XML 처리: XML 문서 처리할 때 필요한 기능

   . SQL : 데이터베이스내에 입력/ 수정/ 삭제/ 조회 하는 기능

   . 함수(function) : 문자열을 처리하는 함수를 제공

 

 prefix 

   c(Core)

   fmt(formatting)

   x(xml)

   sql(sql)

   fn(function)

   

사용예>

Core라이브러리를 사용하기 위해서는 다음과 같이 페이지 지시자를 이용한다.

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

출력 태그 : <c:out>

<c:out value="출력값" default="기본값" escapeXml="true or false">

변수 설정 태그 : <c:set>

<c:set var="변수명" value="설정값" target="객체" property="값" scope="범위">

변수를 제거하는 태그:<c:remove>

<c:remove var="변수명" scope="범위">

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

<c:catch var="변수명">

제어문(if) 태그: <c:if>

<c:if test="조건" var="조건 처리 변수명" scope="범위">

제어문(switch) 태그 : <c:choose>

<c:choose>

<c:when test="조건">처리할 내용 </c:when>

<c:otherwise>처리할 내용 </c:otherwise>

</c:choose>

반복문(for)태그 : <c:forEach>

<c:forEach items="객체명" begin="시작인덱스" end="끝 인덱스" step="증감식" var="변수명"

varStatus="상태변수">

페이지 이동태그 : <c:redirect>

<c:redirect url="url">

파라미터전달 태그 : <c:param>

<c:param name="파라미터명" value="값">


-------------------------------------------------------------------------------------------


jstlEx.jsp


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

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


<!-- 변수 선언 -->

<c:set var = "num1" value="10"/>

<c:set var = "num2" value="5" />

<c:set var ="res" value="${num1*num2}" />


    

<!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>Insert title here</title>

</head>

<body>


${num1}와 ${num2}의 곱은? ${res} <br/>

<c:out value="${res}" /><br/>


<c:catch var="exception">

<%= 10/0 %>

</c:catch>

<br/>

<c:out value="${exception}"/>

<hr/>


<c:if test="${10+10==100}">

</c:if>

<c:if test="${10+10 !=100}">

거짓

</c:if><br/>


<c:forEach var = "aa" begin="0" end="10" step = "2">

<font size=${aa} > 안녕하세요!!! </font><br/>

</c:forEach>



</body>

</html>




    

'기존카테고리 > JSP' 카테고리의 다른 글

FrontController 패턴  (0) 2017.06.15
공지사항 - 파일 쓰기, 읽기  (0) 2017.06.13
EL(Expression Language) 2  (0) 2017.06.13
EL(Expression Language)  (0) 2017.06.13
파일업로드  (0) 2017.06.13