[JSP] JSTL(JSP Standard Tag Library)이란? 설정 방식과 주요 태그
by 우와한개발자
1. JSTL(JSP Standard Tag Library)이란?
- JavaEE 기반 웹 애플리케이션 개발을 위한 컴포넌트 모음
- JSP 스크립트와 HTML 코드가 섞여 복잡해지는 구조를 간결하게 작성하기 위해 Java 코드를 태그 형태로 표준화한 것
2. JSTL 기능
| 기능 | 설명 |
| 제어문 | 변수 선언, if문, for문 등 |
| 포맷 | 데이터 출력 포맷 설정 |
| DB | DB 입력, 수정, 삭제, 조회 |
| 함수 | 문자열 처리 함수 |
| XML | XML 문서 처리 |
3. JSTL 설정
- pom.xml에 의존성을 추가하거나 jar 파일을 직접 추가
<!-- pom.xml -->
<dependency>
<groupId>jakarta.servlet.jsp.jstl</groupId>
<artifactId>jakarta.servlet.jsp.jstl-api</artifactId>
<version>3.0.0</version>
</dependency>
- JSP 파일 상단에 taglib 선언을 추가해야 사용가능
<%@ taglib prefix="c" uri="jakarta.tags.core" %>
4. JSTL 주요 태그 (c 태그)
1) c:set - 변수 선언
- 기본적으로 pageContext에 저장
<c:set var="a" value="hi"/>
<!-- ${a} → hi 출력 -->
2) c:if - 조건문
<c:if test="${5 > 2}">
참일 때 출력
</c:if>
3) c:choose - 다중 조건문 (if-else)
<c:choose>
<c:when test="${조건}">조건이 참일 때</c:when> <!-- if / else if -->
<c:otherwise>모든 조건이 거짓일 때</c:otherwise> <!-- else -->
</c:choose>
4) c:forEach - 반복문
<!-- 강화된 for문 -->
<c:forEach var="i" items="${arr}"></c:forEach>
<!-- 일반 for문 -->
<c:forEach var="i" begin="1" end="4"></c:forEach>
<!-- varStatus로 인덱스 사용 -->
<c:forEach var="book" items="${books}" varStatus="status">
<tr>
<td>${status.index + 1}</td>
<td>${book.isbn}</td>
<td>${book.title}</td>
<td>${book.author}</td>
<td>${book.price}</td>
</tr>
</c:forEach>
5) c:out - 데이터 출력
- ${}와 달리 HTML 태그를 문자열 그대로 출력
<c:set var="message" value="<h2>안녕하세요</h2>"/>
${message} <!-- 안녕하세요 (h2 태그 해석됨) -->
<c:out value="${message}"/> <!-- <h2>안녕하세요</h2> (태그 그대로 출력) -->'Web > JSP' 카테고리의 다른 글
| [JSP] EL (Expression Language) 이란? JSP 공유 영역과 스코프 객체 (0) | 2026.03.31 |
|---|
블로그의 정보
우와한개발자 님의 블로그
우와한개발자