본문 바로가기
Web/JSP

JSP(21) - JSTL

by SeleniumBindingProtein 2022. 1. 29.
728x90
반응형

1. 커스텀 태그 (Custom Tag)
    1) 액션 태그나 표현 언어를 사용하더라고 조건식이나 반복문 등의 자바 코드를 제거하기 위해서
       도입된 기능

2. 커스텀 태그 종류
    1) JSTL (JSP Standard Tag Library)
        - 라이브러리 따로 설치해서 사용함.
    2) 개발자가 만든 커스텀 태그 
        - 스프링 프레임워크에서 미리 만들어서 제공.    

3. JSP 표준 태그 라이브러리 
    1) 가장 많이 사용되는 태그를 표준화하여 라이브러리로 제공
        - Core 태그 : 변수 선언, 조건문/반복문, URL 처리 
        - Formatting 태그 : 숫자, 날짜, 시간 포맷 지정 
        - XML 태그 : XML 파싱
        - Function 태그 : 컬렉션 처리, 문자열 처리 
        - SQL 태그 : DB 연결 및 쿼리 실행      

4. Core 태그 라이브러리 
    1) 사용전 반드시 tablib 디렉티브 태그를 선언해야 함.
        <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
    2) set, remove, if, choose, forEach, forTokens, import, redirect, url, out, catch 
        - <c:set> 형식
            - <c:set var="변수 이름" value="변수값" scope="" />
            - <c:set> 태그로 빈 속성이름 줄여서 사용할수 있음

        - <c:remove> 형식
            - <c:remove var="변수 이름" scope=""/>

        - <c:if> 형식
            - <c:if test="${조건식}" var="변수 이름(조건식의 결과값을 저장)" scope="">
                ....
              </c:if>   

        - <c:choose> 형식 (switch문 기능)
            - <c:choose>
                <c:when test="조건식1">본문내용1</c:when>
                <c:when test="조건식2">본문내용2</c:when>
                ...
                <c:otherwise>본문내용n</c:otherwise>
              </c:choose>    

        - <c:forEach> 형식
            - <c:forEach var="반복할 변수 이름"
                        items="반복할 객체 이름"
                        begin="반복 시작값" end="반복 마지막값"
                        step="한번 반복할때마다 반복 변수를 증가(시킬)값"
                        varStatus="반복상태변수이름(속성)">
                        ---------
                                index  : items에서 정의한 항목을 가리키는 index번호임 (0부터시작)
                                count  : 몇번째 반복인지 나타냄 (1부터시작)
                                first : 첫번째 반복 나타냄
                                last : 마지막 반복 나타냄 
                                current : var에 지정된 현재 변수값
                                (예:loop)
                </c:forEach>

        - <c:url> 형식
            - <c:url var="url이 저장된 변수 이름" value="url경로" scope="">
            [<c:param name="매개변수이름" value="전달값" />]
                ....
              </c:url>

        - <c:redirect> 형식 
            - response.sendRedirect() 기능을 대체함
            - <c:redirect url="redirect할 url">
                [<c:param name="매개변수 이름" value="전달값" />]
                .....
          </c:redirect>              

        - <c:out> 형식
            - 화면에 지정한 값을 출력하는 기능
            - <c:out value="출력할 값" default="기본값" escapeXml="boolean값" />

5. 국제화(다국어, Formatting) 태그 라이브러리 
    1) 국가별로 다양한 언어, 날짜, 시간, 숫자 형식을 설정할 때 사용.
    2) <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> 

    3) 숫자 포맷
            - <fmt:formatNumber>
               -  <fmt:formatNumber value="출력할 숫자" groupingUsed="세 자리마다 콤마 출력여부 결정, 기본값 true"
                    type="출력 양식 설정, percent, currency, number" var="출력할 숫자를 변수에 저장함" 
                    pattern="출력할 숫자의 양식을 패턴으로 지정"/>        
            - <fmt:parseNumber>
                -  <fmt:parseNumber value="파싱할 문자열" pattern="패턴" var="변수 설정"
integerOnly="정수만 파싱" />
       날짜 포맷
            - <fmt:formatDate>
            -   <fmt:formatDate value="출력할 날짜" type="출력 양식-date,time,both"
dateStyle="날짜 스타일-default,short,medium,long,full"
timeStyle="시간 스타일-default,short,medium,long,full"/>            
       타임존 설정
            - <fmt:timeZone>      
       로케일 설정
            - <fmt:setLocale>

728x90
반응형

'Web > JSP' 카테고리의 다른 글

JSP(24) - Model2 회원  (0) 2022.01.29
JSP(23) - Jquery Ajax  (0) 2022.01.29
JSP(19) - 게시판 만들기(Model1)  (0) 2022.01.29
JSP(15) - JSP 내장객체(내장변수)  (0) 2022.01.29
JSP(14) - JSP와 구성요소  (0) 2022.01.29

댓글