JSTL에서 제안하는 표준 접두사
Tag Library | 선언문 | 기능 |
Core (기본) | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> | 가장 자주 사용되는 태그. 일반적인 프로그램의 기능을 제공한다. |
XML | <%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %> | XML 문서를 생성, 조작 |
Formatting (I18N-국제화) |
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %> | RDBMS와 상호 작용하는 태그를 제공 |
Functions (기타함수) |
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/functions" %> |
일반적인 문자열을 가공하고 조작하는 표준함수 |
<c:set>
- 변수 선언 태그, 변수를 다룰 때 사용한다.
- 생성한 변수는 JSP의 로컬 변수가 아니라 Servlet 보관소에 저장된다.
- scope의 기본 값은 page이기 때문에 생략하더라도 JSPContext에 저장된다.
<c:set var="변수명" value="값" scope="page(기본값) | request | session | application"/>
<c:set var="변수명" scope="page(기본값) | request | session | application"> 값 </c:set>
<c:remove>
- 변수 제거 태그
<c:remove var="변수명" scope="page(기본값) | request | session | application" />
ex)
<% pageContext.setAttribute("name", "hong"); %>
이름 : ${name}<br>
<c:remove var="name" />
이름 : ${name}<br>
이름 : hong
이름 :
<c:out>
- 출력문을 만드는 태그
- value 값이 null이면 기본값이 출력되고 기본값이 없으면 빈 문자열이 출력된다.
<c:out value="출력값" default="기본값" />
<c:out value="출력값">기본값</c:out>
ex)
<c:out value="${null}" default="기본값이야" /> //value값이 null이라 default값 출력 !
<c:out value="출력값이야" /> //기본값이 없어서 빈 문자열 출력
<c:out value="${null}">Hello!!</c:out> //value값이 null이라 default값 출력 !
<c:out value="${hi}">Hello!!</c:out> //value값 출력 !
기본값이야
Hello!!
Hi
<c:if>
- test안에 있는 내용이 true인지 false인지에 따라 내용의 출력 여부가 정해진다.
<c:if test"true|false" var="변수명" scope="page(기본값) | request | session | application">
</c:if>
ex)
<c:if test="${1 > 2}" var ="result1">
1은 2보다 크다.
</c:if>
첫 번째 결과 : ${result1"}
<br>
<c:if test="${2 > 1}" var ="result2">
2는 1보다 크다.
</c:if>
두 번째 결과 : ${result2"}
첫 번째 결과: false
2는 1보다 크다.
두 번째 결과: true
<c:choose>
- switch 기능을 사용할 수 있게 해주는 태그
- <c:when> 태그는 한 개 이상 존재해야 하며 <c:otherwise> 태그는 0개 혹은 1개가 올 수 있다.
(<c:when> 조건에 부합하지 않으면 <c:otherwise> 실행)
ex)
<c:set var="id" value="과일" />
<c:choose>
<c:when test="${id == '과일'}">
과일입니다.
</c:when>
<c:when test="${id == '채소'}">
채소입니다.
</c:when>
..
<c:otherwise>
동물입니다.
</c:otherwise>
</c:choose>
<c:forEach>
- 반복 기능을 사용할 수 있도록 해주는 태그
ex)
<% pageContext.setAttribute("fruits", new String[]{"사과", "딸기", "수박"}); %>
<ul>
<c:forTokens var="fruit" items="${fruits}">
<li>${fruit}</li>
</c:forTokens>
</ul>
사과
딸기
수박
<c:forTokens>
- 문자열에 포함된 토큰을 분리해서 각각의 토큰에 대해 반복 처리를 수행하도록 만드는 기능
<c:forTokens var="변수명" items="문자열" delims="구분자">
콘텐츠
</c:forTokens>
Ex)
<% pageContext.setAttribute("fruits","사과,딸기,수박"); %>
<ul>
<c:forTokens var = "fruit" items="${fruits}" delims=",">
<li>${fruit}</li>
</c:forTokens>
</ul>
사과
딸기
수박
<c:url>
- URL을 만들 때 사용
<c:url var="변수명" value="URL">
<c:param name="파라미터명" value="값" />
<c:param name="파라미터명" value="값" />
</c:url>
<c:import>
- URL 속성에 콘텐츠가 있는 주소를 지정하면 해당 주소로 요청하고 응답 결과를 받아서 반환한다.
<c:import url="URL" var="변수명" scope="page(기본값) | request | session | application" />
<c:redirect>
- 리다이렉트 처리를 할 때 사용한다.
<c:redirect url="url" />
주요 formating 태그
<fmt:parseDate>
- 날짜 형식으로 작성된 문자열로 java.util.Date 객체를 생성한다.
<fmt:formatData value="java.util.Data객체지정" pattern="패턴" />
'Backend > EL & JSTL' 카테고리의 다른 글
[ JSTL ] JSTL 기초 , 설치 방법 (0) | 2023.11.21 |
---|---|
[EL] EL 기본 개념 (0) | 2023.11.21 |