ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JSP 태그 JSTL 사용방법
    개발/프로그래밍 2023. 8. 10. 23:12

     

     

    오늘은 JSP에 대해 내용을 준비해 보았습니다. JSP 표준 태그 라이브러리 JSTL은 JSP 페이지의 코딩을 더 간결하고 이해하기 쉽게 만들어 주는 커스텀 태그 모음입니다. 오늘 포스팅에서는 JSTL의 주요 기능을 간략하게 살펴보고, 직접 적용해 볼 수 있는 예제까지 같이 살펴보겠습니다!

     

     

     

    썸네일

     

    목차

       

       

       

      JSTL 개념

      JSTL은 웹 애플리케이션 개발자가 JSP 페이지에서 자주 사용하는 일반적인 기능을 처리하기 위한 여러 태그들을 제공합니다. JSTL은 코어 태그, 조건 태그, 반복 태그, 국제화(i18n) 및 형식 태그, SQL 태그, XML 태그로 분류할 수 있습니다.

       

       

      JSTL 설치 및 설정

      JSTL을 사용하려면 먼저 관련 라이브러리를 다운로드하고, 아래와 같이 태그를 사용하기 위한 설정을 해야 합니다. 필요한 라이브러리는 다음과 같습니다.

      • jstl.jar
      • standard.jar

      다운로드한 라이브러리 파일을 프로젝트의 WEB-INF/lib 경로에 복사한 후, JSP 페이지 상단에 다음과 같이 taglib을 추가합니다.

      <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

       

       

      JSTL 주요 태그

      이제 JSTL의 주요 태그들을 살펴보겠습니다.

       

      3.1 코어 태그

      코어 태그는 변수 조작, 흐름 제어 등 기본적인 작업을 수행하는 데 사용됩니다.

      c:set 변수를 설정하거나 수정합니다.

      <!-- c:set: 변수를 설정하거나 수정합니다. -->
      <c:set var="name" value="John"/> 
      
      <!-- c:remove: 변수를 제거합니다. -->
      <c:remove var="name"/> 
      
      <!-- c:if: 조건이 참일 경우 해당 블록을 실행합니다. -->
      <c:if test="${age >= 20}">
          성인입니다.
      </c:if>
      
      <!-- c:choose, c:when, c:otherwise: 다중 조건 판단을 수행합니다. -->
      <c:choose>
          <c:when test="${age < 13}">
              어린이입니다.
          </c:when>
          <c:when test="${age >= 13 && age < 20}">
              청소년입니다.
          </c:when>
          <c:otherwise>
              성인입니다.
          </c:otherwise>
      </c:choose>

       

      3.2 반복 태그

      반복 태그는 리스트나 배열, 코렉션을 순회하면서 작업을 수행합니다.

      <!-- c:forEach: 주어진 범위 내에서 반복 작업을 수행합니다. -->
      <c:forEach items="${names}" var="name">
          이름: ${name}
      </c:forEach>

       

      3.3 형식 및 국제화 태그

      형식 및 국제화 태그는 숫자, 날짜, 시간 및 통화와 같은 값의 형식을 지정하고 제어하는 데 사용됩니다.

      <!-- fmt:formatNumber:숫자를 지정된 형식으로 출력합니다. -->
      <fmt:formatNumber value="${1000}" pattern="#,###" />
      
      <!-- fmt:formatDate: 날짜를 지정된 형식으로 출력합니다. -->
      <fmt:formatDate value="${dateObj}" pattern="yyyy-MM-dd" />
      
      <!-- fmt:setLocale: 로케일을 변경합니다. -->
      <fmt:setLocale value="ko_KR" />
      
      <!-- fmt:message: 리소스 번들을 사용하여 다국어 메시지를 출력합니다. ex) welcome=환영합니다! -->
      <fmt:message key="welcome" />

       

      3.4 SQL 태그

      SQL 태그는 JSP 페이지에서 데이터베이스와 관련된 작업을 수행할 수 있게 해 줍니다. 물론, JSP 페이지에서 데이터베이스 작업을 수행하는 것은 좋은 설계 방식이 아닙니다. 이러한 작업은 Servlet이나 DAO 클래스와 같은 백엔드 코드에서 처리하는 것이 좋습니다. 하지만 간단한 예제를 만들거나 테스트를 진행할 때 유용하게 사용할 수 있습니다.

      <!-- sql:setDataSource: 데이터 소스를 설정합니다. -->
      <sql:setDataSource var="myDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/testDB" user="root" password="password" />
      
      <!-- sql:query: SQL 쿼리를 실행하여 결과를 가져옵니다. -->
      <sql:query var="result" dataSource="${myDataSource}">
          SELECT * FROM user;
      </sql:query>

       

      3.5 XML 태그

      XML 태그는 JSP 페이지에서 XML 문서를 처리하는 데 사용됩니다.

      <!-- x:parse: XML 문서를 파싱하여 처리 가능한 형식으로 변환합니다. -->
      <x:parse var="parsedDoc" doc="${xmlData}" />
      
      <!-- x:out: XML 노드의 내용을 출력합니다. -->
      <x:out select="$parsedDoc/user/name" />
      
      <!-- x:forEach: XML 노드를 순회하면서 작업을 수행합니다. -->
      <x:forEach select="$parsedDoc/users/user" var="user">
          id: <x:out select="$user/@id"/><br/>
          name: <x:out select="$user/name"/><br/>
      </x:forEach>

       

       

      마무리

      오늘은 JSTL 예제코드들을 위주로 여러가지 기능들을 알아보았습니다! 이런 기능들을 잘 사용하면 좋은 게 개발자들에게 자주 사용하는 기능을 편리하게 제공하여 JSP 페이지의 가독성을 높이고 코드의 재사용성을 증가시킵니다. 이 포스팅에서 소개한 JSTL 사용법을 참고하고 적절한 상황에 적용해 보세요!

       

       

      함께 보면 좋은 글

       

      JSP를 활용한 웹 애플리케이션 성능 최적화 방법

      이번 포스팅에서는 웹 애플리케이션 성능 최적화 방법을 알아보려고 합니다. 내용은 간단하게 JSP를 활용해서 알아보도록 하겠습니다. 최적화는 사용자 경험(UX)을 향상하고 빠른 응답 시간을 제

      sujspace.tistory.com

       

    Designed by Tistory.