티스토리 뷰
<%-- <c:set> --%>
<c:set var="user1" value="홍길동"/>
<c:set var="user2">이순신</c:set>
1. JSTL이란?
JSTL은 JavaServer Pages Standard Tag Library의 약어로 Java EE 기반의 웹 애플리케이션 개발 플랫폼을 위한 컴포넌트 모임이다. JSTL은 JSP의 확장 태그로, XML 데이터 처리와 조건문. 반복문 같은 일을 처리할 수 있다.(위키백과 참고)
2. JSTL 사용하기
JSTL을 사용하기 위해서는 JSTL 라이브러리를 선언해줘야 한다. 여기서 prefix는 JSTL 태그를 사용할 때 사용되는 접두사를 의미한다.
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
3. JSTL core 태그
태그명 | 설명 |
<c:out> | 출력문을 만드는 태그 |
<c:set> | 변수명에 값을 할당하는 태그 |
<c:if> | 조건식이 true면 실행되는 태그 |
<c:choose> | 다른 언어의 switch-case와 같은 기능을 하는 태그 |
<c:when> | switch-case문의 case에 해당되는 태그 |
<c:otherwise> | switch-case문의 default에 해당되는 태그 |
<c:forEach> | 반복 작업에 사용되는 태그 |
4. JSTL 예제
(1) <c:out>
<c:out value="출력값" default="기본값"/>
<c:out value="출력값">기본값</c:out>
(2) <c:set>
<c:set var="변수명" value="값" scope="page(기본값)|request|session|application"/>
<c:set var="변수명" scope="page(기본값)|request|session|application">값</c:set>
(3) <c:if>
<c:if test="조건식" var="변수명" scope="page(기본값) | request | session | application">내용</c:if>
(4) <c:choose>, <c:when>, <c:otherwise>
<c:choose>
<c:when test="조건식">
결과
</c:when>
<c:when test="조건식">
결과
</c:when>
...
<c:otherwise>
결과
</c:otherwise>
</c:choose>
(3) <c:forEach>
<c:forEach var="변수명" items="목록 데이터" begin="시작 인덱스" end="종료 인덱스">콘텐츠</c:forEach>
5. JSTL 예제
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%
List<String> dataList = new ArrayList<>();
dataList.add("리스트1");
dataList.add("리스트2");
dataList.add("리스트3");
%>
<c:set var="list" value="<%=dataList%>"/>
<html>
<head>
<title>JSTL 예제</title>
</head>
<body>
<c:set var="a" value="2"/>
<c:set var="id" value="과일"/>
<c:if test="${a == '2'}" var="result">
a = 2 입니다.
</c:if>
결과 : ${result}
<c:choose>
<c:when test="${id == '과일'}">
과일입니다.
</c:when>
<c:when test="${id == '야채'}">
야채입니다.
</c:when>
<c:otherwise>
고기입니다.
</c:otherwise>
</c:choose>
<c:forEach var="result2" items="${list}">
${result2}
</c:forEach>
</body>
</html>
'나의 Study 기록' 카테고리의 다른 글
[Java] Enum (0) | 2024.03.25 |
---|