JSP 6. JSTL
JSTL(JSP Standard Tag Library) - JSP 표준 태그 라이브러리
간단한 프로그램 로직 구사 (변수선언, if, for 문)
다른 jsp페이지 호출(<c:redirect>, <c:import>)
날짜, 시간, 숫자의 포멧
jsp 페이지 하나를 가지고 여러 가지 언어의 웹 페이지 생성
데이터베이스로의 입력, 수정, 삭제, 조회
xml 문서의 처리
문자열 처리하는 함수 호출
<c:forEach begin="1" end="10">
</c:forEach>
<c:forEach begin="1" end="10" step="2">
</c:forEach>
<fmt:formatNumber value="3.14159" pattern="#.00" />
${fn:toUpperCase("Hello")}
jstl 라이브러리
코어:변수 선언, 실행 흐름의 제어 기능을 제공 다른 jsp페이지로 제어를 이동하는 기능 http://java.sun.com/jsp/jstl/core 접두어 : c
포메팅: 숫자, 날짜, 시간을 포메팅하는 기능 국제화, 다국어 지원을 제공 fmt 접두어 : fmt
데이터베이스: 데이터를 입력/수정/삭제/조회 하는 기능을 제공 sql 접두어 : sql
xml: xml 문서를 처리할 때 필요한 기능을 제공 xml 접두어 : xml
함수: 문자열을 처리하는 함수를 제공 functions 접두어 : fn
지시자
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
변수 선언
<c:set var="num" value="100"/>
<c:set var="num" value="${100}"/>
scope 지정가능
<c:set var="num" value="100" scope="request"/>
변수 삭제
<c:remove var="num" />
<c:remove var="num" scope="request"/>
<c:if test="${num1 > num2}">
num1 이 더 크다.
</c:if>
<c:choose>
<c:when test="${num == 0}">
</c:when>
<c:when test="${num == 1}">
</c:when>
<c:otherwise>
</c:otherwise>
</c:choose>
<c:forEach var="str" items="${arr}">
${str}
</c:forEach>
forEach 액션의 items 애트리뷰트를 이용해서 처리할 수 있는 데이터
. 배열
. Collection 객채
. Iterator 객체
. Enumeration 객체
. Map 객체
. (,) 구분된 항목들을 포함한 문자열
<c:forTokens> : for문과 StringTonkenizer 클래스의 기능을 합친 것 같은 기능
<c:forTokens var="pet' imtes="가*나/다-라" delims="*/-">
${pet} <BR>
</c:forTones>
<c:catch> : try 문과 비슷한 기능
<c:catch var="e">
</c:catch>
<c:if test="${e != null}" >
에러 메시지 : ${e.message}
</c:if>
<c:redirect> sendRedirect 메서드를 통해 다른 웹 자원을 호출하는 일을 한다.
<c:redirect url="http://naver.com"/>
<c:redirect url="test.jsp">
<c:param name="NUM1" value="2">
<c:param name="NUM2" value="3">
</c:redirect>
<c:url> url을 쉽게 다룰 수 있는 방법을 제공한다.
<c:url var="isUrl' value=http://locationhost:8080/test/test.jsp>
<c:out> 데이터를 출력할 때 사용하는 커스텀 액션, 특수 문자로 해석되는 <,>,&,',"를 포함하는 데이터를 출력할때 편리
<c:out value="${param.ID}" default="guest"/>