1. JSTL이란?
- JSP 표준 태그 라이브러리(여러 프로그램이 공통으로 사용하는 코드를 모아놓은 코드의 집합)의 약어
- 자신만의 태그를 추가할 수 있는 기능을 제공한다.
- 주로 JSTL의 Core에서 c를 사용하여 <c:if>, <c:forEach>등으로 사용한다.
2. JSTL 라이브러리 다운로드
-JSTL API - javax.servlet.jsp.jstl-api-1.2.1.jar
-JSTL Implementation - javax.servlet.jsp.jstl-1.2.1.jar 가 필요하다.
http://jstl.java.net/download.html에서 다운받을 수 있다.
3. 사용법
2번에서 다운받은 lib를 WEB-INF/lib에 추가해 넣고, JSTL을 사용하고자 하는 JSP 혹은
공통 JSP와 같은 common.jsp에 “커스텀 액션을 사용하겠다.” 라는 정의를 선언해준다.
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
필자의 경우는 taglib만 incude하는 파일을 생성한 뒤, 공통파일에 추가하여 사용하고 있다.
<tagLibs.jspf>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c-rt" %>
<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="http://java.sun.com/jstl/fmt_rt" prefix="fmt-rt" %>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring" %>
<%@ taglib uri="http://www.springframework.org/security/tags" prefix="sec" %>
4. JSTL 태그 종류 및 사용 예
(1) c:out (prefix="c")
변수의 값을 출력해준다.
<c:out value="출력할 값" default="value가 null일 경우 설정한 default값 출력"/>
<c:out value="작성자" default="Admin" />
<c:out value="hello world!!!!!!!" />
(2) c:set (prefix="c")
변수에 값을 저장한다. setAttriubte 와
동일한 역할을 한다.
<c:set var="변수명" value="9999999 "/>
<c:set var="변수명" > 9999999 </c:set>
<c:set var="변수명" value ="9999999 " scope=”page”/>
(3) c:forEach (prefix="c")
범위안에서 반복문을 수행한다. for와 동일한 역할을 한다.
begin : 시작 값, end : 마지막 값 , step : 증가 단위
다음 소스는 i라는 변수를 사용하여 1부터 10까지 1씩 증가하며 반복문을 수행한다.
<c:forEach var="i" begin="1" end="10" step="1">
<c:set var="weekNum" value="${(i+startWeekDay-2)%7}"></c:set>
</c:forEach>
(4) c:if (prefix="c")
조건문을 수행한다. if와 동일한 역할을 한다.
<c:if test="${pageInfo.PAGE_EDIT eq 'Y'}">
<h2>작업중입니다.</h2>
</c:if>
(5) c:choose / c:when (prefix="c")
if, else 구문 역할을 한다.
<c:choose>
<c:when test="${pageInfo.PAGE_EDIT eq 'Y'}">
pageInfo.PAGE_EDIT값이 Y일 때 해당되는 블록
</c:when>
<c:when test="${pageInfo.PAGE_EDIT eq 'N'}">
pageInfo.PAGE_EDIT값이 N일 때 해당되는 블록 </c:when>
<c:otherwise>
pageInfo.PAGE_EDIT값이 N도 Y도 아닐 때 해당되는 블록
</c:otherwise>
</c:choose>
(6) c:url (prefix="c")
url 주소를 생성해준다.
$.ajax({
type:"POST",
url: '<c:url value="/board/data/getList"/>',
(7) c:include (prefix="c")
JSP에서 페이지 include와 같은 역할을 한다.
<c:import url="http://www.naver.com">
'Tip & Tech > Tech' 카테고리의 다른 글
모바일 클라우드 서비스 (MCS) 교육 정리 (0) | 2016.11.04 |
---|---|
REST란? REST 개념 파헤치기 (0) | 2016.11.03 |
JSON 데이터 검증 사이트/JSON Data 유효성 체크 (0) | 2016.09.07 |
[정규식] 사용방법/ 정규식 예제 / 정규표현식 문법 (2) | 2016.07.20 |
[SVN 에러] is already a working copy for a different URL 해결방법 (0) | 2016.07.01 |