ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JSP] JSTL 정리 | ye050425
    INFO/WEB 2020. 11. 11. 17:37
    반응형

    [출처 : velog.io/@ye050425]

     

    JSP 개발을 단순화하기위한 태그 library

     

    장점

    1. 빠른 개발 -> JSP를 단순화하는 많은 태그를 제공

    2. 코드 재사용성 -> 다양한 페이지에서 JSTL 태그 사용 가능

    3. 스크립틀릿 태그를 사용할 필요가 없음 (스크립틀릿 태그를 사용하지 않음)

     

    JSTL tag

    태그 이름

    설명

    core tags

    변수 지원, URL 관리, 흐름 제어 등을 제공, URL은 http://java.sun.com/jsp/jstl/core , 접두사는 c

    function tags

    문자열 조작 및 문자열 길이를 지원, URL은 http://java.sun.com/jsp/jstl/functions , 접두사는 fn

    formatting tags

    메시지 형식화, 번호 및 날짜 형식화 등을 지원, URL은 http://java.sun.com/jsp/jstl/fmt , 접두사는 fmt

    XML tags

    흐름 제어, 변환 등을 제공, URL은 http://java.sun.com/jsp/jstl/xml , 접두사는 x

    SQL tags

    SQL 지원을 제공, URL은 http://java.sun.com/jsp/jstl/sql , 접두사는 sql

     

     

    Core Tags

    아래 코드 추가하고 사용가능함.

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

     

    List

    태그 이름

    설명

    c:out

    <% = ... %> 태그 작동 방식과 유사한 표현식의 결과를 표시

    c:import

    상대 또는 절대 URL을 검색하여 내용을 'var'의 문자열, 'varReader'의 Reader 또는 페이지에 표시

    c:set

    평가중인 표현식의 결과를 'scope'변수에 설정

    c:remove

    특정 범위에서 지정된 범위 변수를 제거하는 데 사용

    c:catch

    본문에서 발생하는 Throwable 예외를 포착하는 데 사용

    c:if

    조건을 테스트하는 데 사용되는 조건부 태그이며 표현식이 참인 경우에만 본문 내용을 표시

    c:choose, c:when, c:otherwise

    평가 된 조건이 true 인 경우 본문 내용을 포함하는 간단한 조건부 태그

    c:forEach

    기본 반복 태그, 고정 된 횟수 또는 초과 수집 동안 중첩 된 본문 내용을 반복

    c:forTokens

    제공된 델리 미터로 분리 된 토큰을 반복

    c:param

    포함하는 'import'태그의 URL에 매개 변수를 추가

    c:redirect

    브라우저를 새 URL로 리디렉션하고 컨텍스트 기준 URL을 지원

    c

    url

     

    <c:out> Tag

    - JSP expression tag와 비슷하지만 expression에서만 사용할 수 있다.

    ※ <% = ... %>과 유사한 표현식

    <c:out value="${'Welcome to javaTpoint'}"/>

     

    <c:import> Tag

    - 서버 내부 또는 서버 외부의 모든 자원 컨텐츠를 포함하는 추가 기능이 있음
    - include action의 모든 기능을 제공
    - 가져 오기 태그를 사용하여 다른 FTP 서버 및 웹 사이트의 컨텐츠에 액세스 할 수 있었는데 보안 정책 때문에 불가능해짐

      (만약 하고 싶으면 cross domain 찾아보기!!)

    ※ jsp 'include'와 유사

     

    <c:set> Tag

    - 'scope'에서 평가된 표현식의 결과를 설정하는 데 사용
    - 표현식을 평가하고 결과를 사용하여 java.util.Map 또는 JavaBean 값을 설정하므로 유용
    ※ jsp:setProperty action 태그와 유사

    <c:set var="Income" scope="session" value="${4000*4}"/>
    <c:out value="${Income}"/>

     

    <c:remove> Tag

    - 첫 번째 범위 또는 지정된 범위에서 변수를 제거
    - 특별히 도움이되지는 않지만 JSP가 범위 자원을 정리할 수 있도록하는 데 사용될 수 있음

     

    <c:catch> Tag

    - 본문에서 발생하는 Throwable 예외를 포착하고 선택적으로 노출시키는 데 사용
    - 일반적으로 오류 처리에 사용되며 프로그램에서 발생하는 문제를 보다 쉽게 처리

    <c:catch var ="catchtheException">  
       <% int x = 2/0;%>  
    </c:catch>  
      
    <c:if test = "${catchtheException != null}">  
       <p>The type of exception is : ${catchtheException} <br />  
       There is an exception: ${catchtheException.message}</p>  
    </c:if>  

     

    <c:if> Tag

    - 조건을 테스트하는 데 사용
    - 평가된 표현식이 true 인 경우 본문 내용을 표시

    <c:set var="income" scope="session" value="${4000*4}"/>  
    <c:if test="${income > 8000}">  
       <p>My income is: <c:out value="${income}"/><p>  
    </c:if>

     

    <c:choose>, <c:when>, <c:otherwise> Tag

    - choose 태그는 상호 배타적 인 조건부 작업에 대한 컨텍스트를 설정하는 조건부 태그
    - 여러 대안 중에서 선택 하는 Java switch 문 처럼 작동
    - when은 조건이 'true'인 경우 본문을 포함하는 choose의 하위 태그

    - otherwise는 또한 choose의 하위 태그 : <when> 태그를 따르며 평가된 모든 이전 조건이 'false'인 경우에만 실행

    - c: when 및 c: other는 if-else 문처럼 작동합니다. 그러나 c: choose 태그 안에 배치해야합니다.

    <c:choose>  
        <c:when test="${income <= 1000}">  
           Income is not good.  
        </c:when>  
        <c:when test="${income > 10000}">  
            Income is very good.  
        </c:when>  
        <c:otherwise>  
           Income is undetermined...  
        </c:otherwise>  
    </c:choose>  
    <c:out value="${num} is even number"></c:out>  
    </c:when>  
    <c:otherwise>  
    <c:out value="${num} is odd number"></c:out>  
    </c:otherwise>  
    </c:choose>  

     

    <c:forEach> Tag

    - 중첩 된 본문 내용을 고정 된 횟수만큼 또는 컬렉션에 반복하는 데 사용되는 반복 태그
    - 이 태그는 자바 스크립트 를 포함하는 동안, 스크립틀릿을 통해 또는 루프 용으로 사=용하기에 좋은 대안으로 사용
    - 객체 컬렉션을 반복하므로 가장 일반적으로 사용.

    <c:forEach var="j" begin="1" end="3">  
       Item <c:out value="${j}"/><p>  
    </c:forEach> 

     

    <c:forTokens> Tag

    - 제공된 구분 기호로 구분 된 토큰을 반복
    - 문자열을 토큰으로 나누고 각 토큰을 반복하여 출력을 생성하는 데 사용
    - c: forEach 태그와 유사한 속성을 갖음(구분 기호로 사용될 문자를 지정하는 데 사용되는 추가 속성 delims 제외하면 유사)

    <c:forTokens items="Rahul-Nakul-Rajesh" delims="-" var="name">  
       <c:out value="${name}"/><p>  
    </c:forTokens>  

     

    <c:param> Tag

    - 포함하는 'import'태그의 URL에 매개 변수를 추가
    - URL 내에 적절한 URL 요청 매개 변수 지정 가능
    - 필요한 URL 인코딩을 자동으로 수행
    - value 속성은 매개 변수 값을 나타내고 name 속성은 매개 변수 이름을 나타냄

    <c:url value="/index1.jsp" var="completeURL"/>  
     <c:param name="trackingId" value="786"/>  
     <c:param name="user" value="Nakul"/>  
    </c:url>  
    ${completeURL}

     

    <c:redirect> Tag

    - 브라우저를 새 URL로 리디렉션
    - 문맥 기준 URL과 c : param 태그를 지원

    - 자동 URL 재 작성을 사용하여 브라우저를 대체 URL로 리디렉션하는 데 사용

    <c:if test="${url<1}">  
      <c:redirect url="https://velog.io/@ye050425"/>  
      </c:if>  
      <c:if test="${url>1}">  
     	 <c:redirect url="http://facebook.com"/>  
      </c:if>

     

    <c:url> Tag

    - 선택적 쿼리 매개 변수를 사용하여 URL을 만듬
    - URL 인코딩 또는 URL 형식에 사용
    - response.encodeURL () 메소드에 대한 호출을 작성하는 대체 방법으로 사용
    - 장점은 적절한 URL 인코딩이며 자식이 지정한 매개 변수를 포함한다는 것

    <c:url value="/RegisterDao.jsp"/>  

     

     

    function tag

    - 많은 표준 함수를 제공, 대부분은 일반적인 문자열 조작 함수
    - JSTL 함수 라이브러리를 포함시키는 데 사용되는 구문

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

     

    List

    태그 이름

    설명

    fn:contains()

    프로그램에서 지정된 하위 문자열을 포함하는 입력 문자열인지 테스트하는 데 사용

    fn:containsIgnoreCase()

    입력 문자열에 대소 문자를 구분 없이 지정된 하위 문자열이 포함되어 있는지 테스트하는 데 사용

    fn:endsWith()

    입력 문자열이 지정된 접미어로 끝나는 지 테스트하는 데 사용

    fn:escapeXml()

    XML 마크업으로 해석되는 문자를 escape

    fn:indexOf()

    지정된 하위 문자열이 처음 나타나는 문자열 내에서 인덱스를 반환

    fn:trim()

    문자열의 양쪽 끝에서 공백을 제거

    fn:startsWith()

    주어진 문자열이 특정 문자열 값으로 시작되는지 여부를 확인하는 데 사용.

    fn:split()

    문자열을 하위 문자열 배열로 분할

    fn:toLowerCase()

    문자열의 모든 문자를 소문자로 변환

    fn:toUpperCase()

    문자열의 모든 문자를 대문자로 변환

    fn:substring()

    주어진 시작 및 끝 위치에 따라 문자열의 하위 집합을 반환

    fn:substringAfter()

    특정 하위 문자열 다음에 문자열의 하위 집합을 반환

    fn:substringBefore()

    특정 하위 문자열 앞의 문자열 하위 집합을 반환

    fn:length()

    문자열 내부의 문자 수 또는 컬렉션의 항목 수를 반환

    fn:replace()

    모든 문자열을 다른 문자열 시퀀스로 바꿈

     

    fn:contains()

    - 지정된 하위 문자열이 문자열에서 발견되면 true를 반환하고 그렇지 않으면 false를 반환

    <c:set var="String" value="Hello world"/>  
      
    <c:if test="${fn:contains(String, 'hello')}">  
       <p>Found hello<p>  
    </c:if>  
      
    <c:if test="${fn:contains(String, 'Hello')}">  
       <p>Found Hello<p>  
    </c:if>  

     

    fn:containsIgnoreCase()

    - 입력 문자열에 대소 문자를 구분하지 않고 지정된 하위 문자열이 포함되어 있는지 테스트하는 데 사용
    - 지정된 부분 문자열을 검색하는 동안 대소 문자를 무시

    <c:if test="${fn:containsIgnoreCase(String, 'hello')}">  
      <p>Found hello 2<p>  
    </c:if>  
    	  
    <c:if test="${fn:containsIgnoreCase(String, 'Hello')}">  
      <p>Found Hello 2<p>  
    </c:if> 

     

    endsWith ()

    - 입력 문자열이 지정된 접미어로 끝나는 지 테스트하는 데 사용
    - 문자열이 지정된 접미어로 끝나는 경우 true를 반환하고 그렇지 않으면 false를 반환

    <c:set var="String" value="Welcome to JSP programming"/>  
      
    <c:if test="${fn:endsWith(String, 'programming')}">  
       <p>String ends with programming<p>  
    </c:if>  
      
    <c:if test="${fn:endsWith(String, 'JSP')}">  
       <p>String ends with JSP<p>  
    </c:if> 

     

    escapeXml ()

    - XML 마크 업 언어에서 문자를 이스케이프 처리하는 데 사용

    <c:set var="string1" value="It is first String."/>  
    <c:set var="string2" value="It is <xyz>second String.</xyz>"/>  
      
    <p>With escapeXml() Function:</p>  
    <p>string-1 : ${fn:escapeXml(string1)}</p>  
    <p>string-2 : ${fn:escapeXml(string2)}</p>  
      
    <p>Without escapeXml() Function:</p>  
    <p>string-1 : ${string1}</p>  
    <p>string-2 : ${string2}</p>  <c:set var="string1" value="It is first String."/> <c:set var="string2" value="It is <xyz>second String.</xyz>"/> <p>With escapeXml() Function:</p> <p>string-1 : ${fn:escapeXml(string1)}</p> <p>string-2 : ${fn:escapeXml(string2)}</p> <p>Without escapeXml() Function:</p> <p>string-1 : ${string1}</p> <p>string-2 : ${string2}</p>

     

    fn:indexOf()

    - 하위 문자열에 지정된 문자열의 인덱스를 결정하는 데 사용

    <c:set var="string1" value="It is first String."/>  
    <c:set var="string2" value="It is <xyz>second String.</xyz>"/>  
      
    <p>Index-1 : ${fn:indexOf(string1, "first")}</p>  
    <p>Index-2 : ${fn:indexOf(string2, "second")}</p>  

     

    fn:trim()

    - 문자열의 양쪽 끝에서 공백을 무시하는 데 사용

    <c:set var="str1" value="Welcome to JSP programming"/>  
    <p>String-1 Length is : ${fn:length(str1)}</p>  
      
    <c:set var="str2" value="${fn:trim(str1)}" />  
    <p>String-2 Length is : ${fn:length(str2)}</p>  
    <p>Final value of string is : ${str2}</p> 

     

    startsWith ()

    - 입력 문자열이 지정된 하위 문자열로 시작되는지 테스트
    - 주어진 접두사로 문자열을 시작할 때 true 아니면 false 반환

    <c:set var="msg" value="The Example of JSTL fn:startsWith() Function"/>  
    The string starts with "The": ${fn:startsWith(msg, 'The')}  
    <br>The string starts with "Example": ${fn:startsWith(msg, 'Example')} 

     

    fn:split()

    - 구분 기호 문자열을 기반으로 문자열을 배열로 분할하는 데 사용

    <c:set var="str1" value="Welcome-to-JSP-Programming."/>  
    <c:set var="str2" value="${fn:split(str1, '-')}" />  
    <c:set var="str3" value="${fn:join(str2, ' ')}" />  
      
    <p>String-3 : ${str3}</p>  
    <c:set var="str4" value="${fn:split(str3, ' ')}" />  
    <c:set var="str5" value="${fn:join(str4, '-')}" />  
      
    <p>String-5 : ${str5}</p>  

     

    fn:toLowerCase ()

    - 입력 문자열에서 대문자를 해당하는 소문자로 바꾸는 데 사용

    <c:set var="string" value="Welcome to JSP Programming"/>  
    ${fn:toLowerCase("HELLO,")}  
    ${fn:toLowerCase(string)}  

     

    fn:toUpperCase()

    - 입력 문자열에서 소문자를 해당 대문자로 바꾸는 데 사용

    <c:set var="site" value="javatpoint.com"/>  
    <c:set var="author" value="Sonoo Jaiswal"/>  
    Hi, This is ${fn:toUpperCase(site)} developed by ${fn:toUpperCase(author)}.  

     

    fn:substring ()

    - 지정된 시작 및 끝 위치에 따라 주어진 입력 문자열의 하위 문자열을 반환하는 데 사용
     * start : 하위 문자열의 시작 위치
     * end : 부분 문자열의 끝 위치
     * 입력 문자열 : 하위 문자열을 가져와야하는 문자열
     * 함수의 반환 유형 : 문자열

    <c:set var="string" value="This is the first string."/>  
    ${fn:substring(string, 5, 17)}  

     

    fn:substringAfter()

    - 제공된 문자열 값 뒤에있는 문자열 부분을 반환

    <c:set var="string" value="Nakul Jain"/>  
    ${fn:substringAfter(string, "Nakul")}  

     

    fn:substringBefore ()

    - 지정된 문자열 값 앞에있는 원래 문자열의 일부를 반환하는 데 사용

    <c:set var="string" value="Hi, This is JAVATPOINT.COM developed by SONOO JAISWAL."/>  
    ${fn:substringBefore(string, "developed")}  

     

    fn:length()

    - 문자열 길이를 계산하고 컬렉션의 요소 수를 찾는 데 사용

    <c:set var="str1" value="This is first string"/>  
    <c:set var="str2" value="Hello"/>  
    Length of the String-1 is: ${fn:length(str1)}<br>  
    Length of the String-2 is: ${fn:length(str2)}  

     

    fn:replace ()

    - 입력 문자열을 검색하여 제공된 문자열로 바꿈

    <c:set var="author" value="Ramesh Kumar"/>  
    <c:set var="string" value="pqr xyz abc PQR"/>  
    ${fn:replace(author, "Ramesh", "Suresh")}  
    ${fn:replace(string, "pqr", "hello")}  

     

     

    JSTL Formatting tags

    - 서식 태그는 메시지 형식, 번호 및 날짜 형식 등을 지원
    - 국제화 된 웹 사이트에서 텍스트, 시간, 날짜 및 숫자를 표시하고 형식화하는 데 사용
    - 라이브러리를 포함하는 데 사용되는 구문

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

     

    List

    태그 이름

    설명

    fmt:parseNumber

    통화, 백분율 또는 숫자의 문자열 표현을 구문 분석하는 데 사용

    fmt:timeZone

    본문 또는 시간대에 중첩 된 구문 분석 조치를 시간 형식화에 지정

    fmt:formatNumber

    특정 형식 또는 정밀도로 숫자 값을 형식화하는 데 사용

    fmt:parseDate

    시간과 날짜의 문자열 표현을 구문 분석

    fmt:bundle

    태그 본문에서 사용될 ResourceBundle 객체를 만드는 데 사용

    fmt:setTimeZone

    시간대 구성 변수 내에 시간대를 저장

    fmt:setBundle

    자원 번들을로드하고이를 번들 구성 변수 또는 명명 된 범위 변수에 저장variable or the named scoped variable.

    fmt:message

    국제화 된 메시지를 표시

    fmt:formatDate

    제공된 패턴 및 스타일을 사용하여 시간 및 / 또는 날짜를 형식화함

     

    fmt:parseNumber

    - 통화, 백분율 또는 숫자의 문자열 표현을 구문 분석하는 데 사용
    - 사용자 지정 형식 패턴을 기반으로 함

    <h3>The fmt:parseNumber tag Example is:</h3>  
    <c:set var="Amount" value="786.970" />  
    <fmt:parseNumber var="j" type="number" value="${Amount}" />  
    <p>
      <i>Amount is:</i> 
      <c:out value="${j}" />
    </p>  
    
    <fmt:parseNumber var="j" integerOnly="true" type="number" value="${Amount}" />  
    <p>
      <i>Amount is:</i>  
      <c:out value="${j}" />
    </p>  

     

    fmt:timeZone tag

    - 시간 형식화 조작에 사용되는 시간대 정보를 지정하는 데 사용

    <c:set var="str" value="<%=new java.util.Date()%>" />  
    <table border="2" width="100%">  
      <tr>  
         <td width="100%" colspan="2" bgcolor="#FF7F50">  
           <p align="center">  
             <b>  
               <font color="#000000" size="6">Formatting:  
                 <fmt:formatDate value="${str}" type="both" timeStyle="long" dateStyle="long" />  
               </font>  
             </b>  
           </p>  
         </td>  
      </tr>  
      <c:forEach var="zone" items="<%=java.util.TimeZone.getAvailableIDs()%>">  
        <tr>  
          <td width="50%"  bgcolor="#C0C0C0">  
            <c:out value="${zone}" />  
          </td>  
          <td width="50%" bgcolor="#FFEBCD">  
            <fmt:timeZone value="${zone}">  
              <fmt:formatDate value="${str}" timeZone="${zn}" type="both"/>  
            </fmt:timeZone>  
          </td>  
        </tr>  
      </c:forEach>  
    </table> 

     

    fmt : formatNumber

    - 사용자 정의 형식 패턴에 따라 백분율, 통화 및 숫자를 형식화하는 데 사용

    <h3>Formatting of Number:</h3>  
    <c:set var="Amount" value="9850.14115" />  
    <p> 
      Formatted Number-1:  
      <fmt:formatNumber value="${Amount}" type="currency" />
    </p>  
    <p>
      Formatted Number-2:  
      <fmt:formatNumber type="number" groupingUsed="true" value="${Amount}" />
    </p>  
    <p>
      Formatted Number-3:  
      <fmt:formatNumber type="number" maxIntegerDigits="3" value="${Amount}" />
    </p>  
    <p>
      Formatted Number-4:  
      <fmt:formatNumber type="number" maxFractionDigits="6" value="${Amount}" />
    </p>  
    <p>
      Formatted Number-5:  
      <fmt:formatNumber type="percent" maxIntegerDigits="4" value="${Amount}" />
    </p>  
    <p>
      Formatted Number-6:  
      <fmt:formatNumber type="number" pattern="###.###$" value="${Amount}" />
    </p>  

     

    fmt:parseDate

    - 사용자 정의 형식 패턴에 따라 시간과 날짜 형식을 지정하는 데 사용

    <h3>Parsed Date:</h3>  
    <c:set var="date" value="12-08-2016" />  
      
    <fmt:parseDate value="${date}" var="parsedDate"  pattern="dd-MM-yyyy" />  
    <p><c:out value="${parsedDate}" /></p>

     

    fmt : bundle

    - 태그 본문에서 사용하는 자원 번들을 로드
    - <fmt : bundle 태그>와 </ fmt : bundle> 태그 사이에서 발생하는 모든 <fmt : message>태그에 사용
    - 태그 본문에서 사용될 ResourceBundle 객체를 만드는 데 사용

     

    ※ JSTL tag sourcecode

    <fmt:bundle basename="com.hello.Simple" prefix="colour.">  
      <fmt:message key="Violet"/><br/>  
      <fmt:message key="Indigo"/><br/>  
      <fmt:message key="Blue"/><br/>  
    </fmt:bundle> 

     

    ※ Simple.java Sourcecode

    package com.javatpoint;  
    import java.util.ListResourceBundle;  
    public class Simple extends ListResourceBundle {  
      public Object[][] getContents() {  
        return contents;  
      }  
      static final Object[][] contents = { 
        { "colour.Violet", "Violet" },  
        { "colour.Indigo", "Indigo" }, 
        { "colour.Blue", "Blue" }, 
      };  
    }  

     

    fmt:setTimeZone

    - 지정된 범위 변수 내에서 표준 시간대 개체를 복사하는 데 사용

    <c:set var="date" value="<%=new java.util.Date()%>" />  
    <p>
      <b>Date and Time in Indian Standard Time(IST) Zone:</b> 
      <fmt:formatDate value="${date}" type="both" timeStyle="long" dateStyle="long" />
    </p>  
    <fmt:setTimeZone value="GMT-10" />  
    <p>
      <b>Date and Time in GMT-10 time Zone: </b>
      <fmt:formatDate value="${date}" type="both" timeStyle="long" dateStyle="long" />
    </p>

     

    fmt : setBundle

    - 자원 번들을로드하고 해당 값을 번들 구성 변수 또는 이름 범위 변수에 저장하는 데 사용
    - 태그 본문에서 사용될 ResourceBundle 객체를 만드는 데 사용

     

    ※ test Sourcecode

    <fmt:setBundle basename="com.hello.Main" var="lang"/>  
    <fmt:message key="vegetable.Potato" bundle="${lang}"/><br/>  
    <fmt:message key="vegetable.Tomato" bundle="${lang}"/><br/>  
    <fmt:message key="vegetable.Carrot" bundle="${lang}"/><br/>  

     

    ※ Main.java

    import java.util.ListResourceBundle;  
    public class Main extends ListResourceBundle {  
      public Object[][] getContents() {  
        return contents;  
      }  
      static final Object[][] contents = { 
    	{ "vegetable.Potato", "Potato" },  
        { "vegetable.Tomato", "Tomato" }, 
        { "vegetable.Carrot", "Carrot" }, 
      };  
    }

     

    fmt:message

    - 국제화 된 메시지를 표시하는 데 사용
    - 번들 속성에 지정된 자원 번들을 사용하여 값을 리턴하도록 현지화 된 메시지의 키를 맵핑

    <fmt:setBundle basename="com.hello.Message" var="lang"/>  
    <fmt:message key="vegetable.Potato" bundle="${lang}"/><br/>  
    <fmt:message key="vegetable.Tomato" bundle="${lang}"/><br/>  
    <fmt:message key="vegetable.Carrot" bundle="${lang}"/><br/>  

     

    ※ Message.java

    import java.util.ListResourceBundle; 
    
    public class Message extends ListResourceBundle {  
      public Object[][] getContents() {  
        return contents;  
      }  
      static final Object[][] contents = { 
        { "vegetable.Potato", "Potato" },  
        { "vegetable.Tomato", "Tomato" }, 
        { "vegetable.Carrot", "Carrot" }, 
      };  
    }  

     

    fmt:formatDate

    - 제공된 패턴 및 스타일을 사용하여 날짜 및 시간의 다른 형식에 사용

    <h2>Different Formats of the Date</h2>  
    <c:set var="Date" value="<%=new java.util.Date()%>" />  
    <p>  
      Formatted Time :  
      <fmt:formatDate type="time" value="${Date}" />  
    </p>  
    <p>  
      Formatted Date :  
      <fmt:formatDate type="date" value="${Date}" />  
    </p>  
    <p>  
      Formatted Date and Time :  
      <fmt:formatDate type="both" value="${Date}" />  
    </p>  
    <p>  
      Formatted Date and Time in short style :  
      <fmt:formatDate type="both" dateStyle="short" timeStyle="short" value="${Date}" />  
    </p>  
    <p>  
      Formatted Date and Time in medium style :  
      <fmt:formatDate type="both" dateStyle="medium" timeStyle="medium" value="${Date}" />  
    </p>  
    <p>  
      Formatted Date and Time in long style :  
      <fmt:formatDate type="both" dateStyle="long" timeStyle="long" value="${Date}" />  
    </p>

     

     

    XML tags

    - JSP 중심의 XML 문서 조작 및 작성 방법을 제공하는 데 사용
    - XML 데이터와 상호 작용하는 데 사용되는 사용자 정의 태그 제공
    - 흐름 제어, 변환 등을 제공
    - 라이브러리를 포함하는 데 사용되는 구문

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

    * 예시 실행을 위해서는 \lib: 안에 아래 두 파일이 있어야 함

     - Xalan.jar: Download this jar file from the link: http://xml.apache.org/xalan-j/index.html
     - XercesImpl.jar: Download this jar file from the link: http://www.apache.org/dist/xerces/j/

     

    List

    XML 태그 이름

    설명

    x:out

    <%= ...> 태그와 유사하지만 XPath 표현식

    x:parse

    태그 본문 또는 속성에 지정된 XML 데이터를 구문 분석하는 데 사용

    x:set

    변수를 XPath 표현식의 값으로 설정하는 데 사용

    x:choose

    상호 배타적 인 조건부 작업에 대한 context를 설정하는 조건부 태그

    x:when

    가 된 조건이 'true'인 경우 본문이 포함됨

    x:otherwise

    태그 및 이전의 모든 조건이 '거짓'인 경우에만 실행

    x:if

    테스트 XPath 표현식을 평가하는 데 사용되며, true 인 경우 본문 내용을 처리

    x:transform

    XSL (Extensible Stylesheet Language) 변환을 제공하기 위해 XML 문서에서 사용

    x:param

    XSLT 스타일 시트에서 매개 변수를 설정하기 위해 변환 태그와 함께 사용

    <h2>Vegetable Information:</h2>  
    <c:set var="vegetable">  
    <vegetables>  
        <vegetable>  
          <name>onion</name>  
          <price>40/kg</price>  
        </vegetable>  
     <vegetable>  
          <name>Potato</name>  
          <price>30/kg</price>  
        </vegetable>  
     <vegetable>  
          <name>Tomato</name>  
          <price>90/kg</price>  
        </vegetable>  
    </vegetables>  
    </c:set>  
    <x:parse xml="${vegetable}" var="output"/>  
    <b>Name of the vegetable is</b>:  
    <x:out select="$output/vegetables/vegetable[1]/name" /><br>  
    <b>Price of the Potato is</b>:  
    <x:out select="$output/vegetables/vegetable[2]/price" />  

     

     

    SQL Tags

    - SQL 지원을 제공
    - 사용하면 Microsoft SQL Server, mySQL, or Oracle 와 상호작용 가능

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

     

    List

    SQL 태그 이름

    설명

    sql:setDataSource

    프로토 타이핑에만 적합한 간단한 데이터 소스를 만드는 데 사용

    sql:query

    sql 속성 또는 본문에 정의 된 SQL 쿼리를 실행하는 데 사용

    sql:update

    sql 속성 또는 태그 본문에 정의 된 SQL 업데이트를 실행하는 데 사용

    sql:param

    SQL 문의 매개 변수를 지정된 값으로 설정하는 데 사용

    sql:dateParam

    SQL 문의 매개 변수를 지정된 java.util.Date 값으로 설정하는 데 사용

    sql:transaction

    중첩 된 데이터베이스 조치에 공통 연결을 제공하는 데 사용

     

    반응형

    댓글

Luster Sun