-
JSP - JSTL 조건문 swich 사용하기JSP 2025. 2. 11. 22:44반응형
1. 코드 설명
(1) JSTL 설정
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>- <%@ taglib>: JSP에서 JSTL 라이브러리를 사용하려면 이 설정이 필요합니다. c는 JSTL의 코어 태그 라이브러리를 참조하는 접두어입니다.
- uri="http://java.sun.com/jsp/jstl/core": 이 URI는 JSTL의 코어 태그 라이브러리를 참조하는 것입니다. 이를 통해 c 접두어를 사용하여 JSTL 태그들을 사용할 수 있습니다.
(2) 변수 설정
<c:set var="cnt" value="80"/>- <c:set>: cnt라는 변수를 80으로 설정하는 태그입니다. cnt는 조건문을 처리하는 데 사용될 값입니다.
(3) c:choose - 조건 분기
<c:choose> <c:when test="${cnt % 2 == 0}"> 짝수입니다. </c:when> <c:when test="${cnt$2 != 0}"> 홀수입니다. </c:when> <c:otherwise> 일치하는 when 절이 없는 경우에 실행한다. </c:otherwise> </c:choose>- <c:choose>: 여러 조건을 처리할 수 있는 조건문입니다. 이 태그 내에서 <c:when> 및 <c:otherwise> 태그를 사용하여 조건에 따라 다른 동작을 실행합니다.
- <c:when>: 조건이 참일 때 실행할 내용을 작성하는 태그입니다.
- <c:otherwise>: 위의 조건이 모두 참이 아닐 경우 실행될 내용을 작성하는 태그입니다.
(4) 조건 1 - 짝수 판단
<c:when test="${cnt % 2 == 0}"> 짝수입니다. </c:when>- ${cnt % 2 == 0}: cnt가 2로 나누어 떨어지는지 확인합니다. 나누어 떨어지면 짝수입니다.
(5) 조건 2 - 홀수 판단 (문법 오류)
<c:when test="${cnt$2 != 0}"> 홀수입니다. </c:when>- 오류: cnt$2 != 0는 잘못된 구문입니다. cnt % 2 != 0으로 수정해야 합니다. 이는 cnt가 2로 나누어 떨어지지 않으면 홀수임을 확인하는 조건입니다.
(6) 조건이 일치하지 않으면 실행될 내용
<c:otherwise> 일치하는 when 절이 없는 경우에 실행한다. </c:otherwise>- <c:otherwise>: 만약 cnt % 2 == 0 또는 cnt % 2 != 0 조건이 모두 참이 아니라면 이 부분이 실행됩니다. 하지만 이 예제에서는 모든 숫자가 짝수나 홀수이기 때문에 사실상 이 부분은 실행되지 않습니다.
2. 수정된 전체 코드
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <c:set var="cnt" value="80"/> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <c:choose> <c:when test="${cnt % 2 == 0}"> 짝수입니다. </c:when> <c:when test="${cnt % 2 != 0}"> 홀수입니다. </c:when> <c:otherwise> 일치하는 when 절이 없는 경우에 실행된다. </c:otherwise> </c:choose> </body> </html>3. 코드 설명 (수정된 부분 포함)
- <c:choose>: if-else 구조와 유사한 역할을 하는 태그입니다. 여러 조건 중 첫 번째로 참인 조건에 해당하는 블록이 실행됩니다.
- <c:when>: 각 조건을 검사하는 부분으로, 조건이 참이면 그에 해당하는 내용을 실행합니다.
- 첫 번째 <c:when test="${cnt % 2 == 0}">: cnt 값이 짝수일 경우 실행됩니다.
- 두 번째 <c:when test="${cnt % 2 != 0}">: cnt 값이 홀수일 경우 실행됩니다.
- <c:otherwise>: 만약 모든 <c:when> 조건이 거짓이면 실행됩니다. 이 예제에서는 cnt 값이 짝수나 홀수여야 하므로 실제로 실행되지 않지만, 조건에 맞지 않는 경우 처리하려면 이 태그를 사용할 수 있습니다.
4. JSTL choose, when, otherwise 태그 사용법
- <c:choose>: 여러 조건문을 처리하는 데 유용합니다. if-else if-else 구문을 대체할 수 있습니다.
- <c:when>: 조건이 참일 때 실행될 부분을 정의합니다. 여러 개의 <c:when>을 사용할 수 있습니다.
- <c:otherwise>: when 조건들이 모두 거짓일 경우 실행됩니다. 필수는 아니며, 조건이 없을 때 실행할 기본 내용을 정의할 때 사용됩니다.
반응형'JSP' 카테고리의 다른 글
JSP - JSTL 배열 반복문으로 출력하기 (0) 2025.02.11 JSP - JSTL 반복문 사용하기 (0) 2025.02.11 JSP - JSTL에서 if문 사용하기 (0) 2025.02.11 Forwarding이란? (0) 2025.01.30 JSP - 코어태그 <c:out>와 <c:set> (0) 2024.08.30