Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSTL x:choose 태그로 JSP에서 switch 문처럼 조건 분기하기

JSTL의 <x:choose> 태그는 자바(Java)의 switch 문과 동일한 방식으로 동작합니다. 이 태그를 사용하면 여러 가지 대안 중 하나를 선택하여 실행할 수 있습니다. switch 문에서 case 문으로 각 조건을 나열하듯이, <x:choose> 태그 안에는 여러 개의 <x:when> 태그를 배치합니다. 또한 switch 문에 기본 동작을 지정하는 default 절이 있는 것처럼, <x:choose> 태그에서는 <x:otherwise> 태그가 default 절 역할을 수행합니다.

속성(Attribute)

  • <x:choose> 태그는 어떤 속성도 가지지 않습니다.

  • <x:when> 태그는 아래 표에 정리된 하나의 속성을 가집니다.

  • <x:otherwise> 태그는 어떤 속성도 가지지 않습니다.

<x:when> 태그가 가지는 속성은 다음과 같습니다.

속성설명필수 여부기본값
select평가할 조건식(XPath 표현)없음

사용 예제

<%@ taglib prefix = "c" uri = "https://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix = "x" uri = "https://java.sun.com/jsp/jstl/xml" %>
<html>
   <head>
     <title>JSTL x:choose Tags</title>
   </head>
   <body>
      <h3>Books Info:</h3>
      <c:set var = "xmltext">
         <books>
            <book>
               <name>Padam History</name>
               <author>ZARA</author>
               <price>100</price>
            </book>
            <book>
               <name>Great Mistry</name>
               <author>NUHA</author>
               <price>2000</price>
            </book>
         </books>
      </c:set>
      <x:parse xml = "${xmltext}" var = "output"/>
      <x:choose>
         <x:when select = "$output//book/author = 'ZARA'">
            Book is written by ZARA
          </x:when>
          <x:when select = "$output//book/author = 'NUHA'">
             Book is written by NUHA
          </x:when>
          <x:otherwise>
             Unknown author.
          </x:otherwise>
       </x:choose>
   </body>
</html>

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Books Info:
Book is written by ZARA