JSTL 는 유용한 JSP 태그들을 모아놓은 라이브러리입니다. 커스텀 태그를 JSTL tags와 통합할 수 있는 프레임워크도 제공하므로 알아두시면 좋을거에요.
JSTL태그는 기능별로 분류가 됩니다.
Core Tags
Formatting tags
SQL tags
XML tags
JSTL Functions
Apache Tomcat container 를 사용중이면 아래 두가지 스텝으로 설치가 완료됩니다.
Apache Standard Taglib 이곳에서 라이브러리를 다운로드하고 압축을 풀어주세요.
압축이 풀린 디렉토리내의 lib디렉토리의 JAR 파일들을 여러분이 사용하려는 애플리케이션의 webapps\ROOT\WEB-INF\lib 디렉토리안에 넣어주세요. ( 이거는 이클립스에서 직접 하실 수 있는건 아시죠? )
태그라이브러리를 사용하려면 <taglib> 디렉티브를 JSP 페이지 제일 위쪽에 선언해주셔야 합니다.
JSTL 태그 중에서 가장 많이 사용되는 태그입니다.
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Tag | Description |
---|---|
<c:out > | Like <%= ... >, but for expressions. |
<c:set > | Sets the result of an expression evaluation in a 'scope' |
<c:remove > | Removes a scoped variable (from a particular scope, if specified). |
<c:catch> | Catches any Throwable that occurs in its body and optionally exposes it. |
<c:if> | Simple conditional tag which evalutes its body if the supplied condition is true. |
<c:choose> | Simple conditional tag that establishes a context for mutually exclusive conditional operations, marked by <when> and <otherwise> |
<c:when> | Subtag of <choose> that includes its body if its condition evalutes to 'true'. |
<c:otherwise > | Subtag of <choose> that follows <when> tags and runs only if all of the prior conditions evaluated to 'false'. |
<c:import> | Retrieves an absolute or relative URL and exposes its contents to either the page, a String in 'var', or a Reader in 'varReader'. |
<c:forEach > | The basic iteration tag, accepting many different collection types and supporting subsetting and other functionality . |
<c:forTokens> | Iterates over tokens, separated by the supplied delimeters. |
<c:param> | Adds a parameter to a containing 'import' tag's URL. |
<c:redirect > | Redirects to a new URL. |
<c:url> | Creates a URL with optional query parameters |
포매팅 관련 태그들입니다.다국적 Web 사이트를 만들때 유용하다고 하네요.
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
Tag | Description |
---|---|
<fmt:formatNumber> | To render numerical value with specific precision or format. |
<fmt:parseNumber> | Parses the string representation of a number, currency, or percentage. |
<fmt:formatDate> | Formats a date and/or time using the supplied styles and pattern |
<fmt:parseDate> | Parses the string representation of a date and/or time |
<fmt:bundle> | Loads a resource bundle to be used by its tag body. |
<fmt:setLocale> | Stores the given locale in the locale configuration variable. |
<fmt:setBundle> | Loads a resource bundle and stores it in the named scoped variable or the bundle configuration variable. |
<fmt:timeZone> | Specifies the time zone for any time formatting or parsing actions nested in its body. |
<fmt:setTimeZone> | Stores the given time zone in the time zone configuration variable |
<fmt:message> | To display an internationalized message. |
<fmt:requestEncoding> | Sets the request character encoding |
JSTL SQL 태그는 관계형 데이타베이스 시스템을 핸들링할 수 있습니다. ( Oracle, MySQL, Microsoft SQL Server )
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
Tag | Description |
---|---|
<sql:setDataSource> | Creates a simple DataSource suitable only for prototyping |
<sql:query> | Executes the SQL query defined in its body or through the sql attribute. |
<sql:update> | Executes the SQL update defined in its body or through the sql attribute. |
<sql:param> | Sets a parameter in an SQL statement to the specified value. |
<sql:dateParam> | Sets a parameter in an SQL statement to the specified java.util.Date value. |
<sql:transaction > | Provides nested database action elements with a shared Connection, set up to execute all statements as one transaction. |
JSTL XML 태그는 JSP에서 XML 문서를 생성 및 조작할 수 있도록 해줍니다. 하지만 XML을 파싱하거나 데이타를 변환하거나 XPath 표현식을 사용하려면 추가적인 커스텀 태그가 필요합니다.
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
아래의 두 jar파일도 <Tomcat Installation Directory>\lib 에 추가해주셔야 합니다.
XercesImpl.jar: Download it from http://www.apache.org/dist/xerces/j/
xalan.jar: Download it from http://xml.apache.org/xalan-j/index.html
Tag | Description |
---|---|
<x:out> | Like <%= ... >, but for XPath expressions. |
<x:parse> | Use to parse XML data specified either via an attribute or in the tag body. |
<x:set > | Sets a variable to the value of an XPath expression. |
<x:if > | Evaluates a test XPath expression and if it is true, it processes its body. If the test condition is false, the body is ignored. |
<x:forEach> | To loop over nodes in an XML document. |
<x:choose> | Simple conditional tag that establishes a context for mutually exclusive conditional operations, marked by <when> and <otherwise> |
<x:when > | Subtag of <choose> that includes its body if its expression evalutes to 'true' |
<x:otherwise > | Subtag of <choose> that follows <when> tags and runs only if all of the prior conditions evaluated to 'false' |
<x:transform > | Applies an XSL transformation on a XML document |
<x:param > | Use along with the transform tag to set a parameter in the XSLT stylesheet |
JSTL 은 표준 함수들을 제공하고 있습니다. 대부분 스트링관련 함수들이죠.
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
Function | Description |
---|---|
fn:contains() | Tests if an input string contains the specified substring. |
fn:containsIgnoreCase() | Tests if an input string contains the specified substring in a case insensitive way. |
fn:endsWith() | Tests if an input string ends with the specified suffix. |
fn:escapeXml() | Escapes characters that could be interpreted as XML markup. |
fn:indexOf() | Returns the index withing a string of the first occurrence of a specified substring. |
fn:join() | Joins all elements of an array into a string. |
fn:length() | Returns the number of items in a collection, or the number of characters in a string. |
fn:replace() | Returns a string resulting from replacing in an input string all occurrences with a given string. |
fn:split() | Splits a string into an array of substrings. |
fn:startsWith() | Tests if an input string starts with the specified prefix. |
fn:substring() | Returns a subset of a string. |
fn:substringAfter() | Returns a subset of a string following a specific substring. |
fn:substringBefore() | Returns a subset of a string before a specific substring. |
fn:toLowerCase() | Converts all of the characters of a string to lower case. |
fn:toUpperCase() | Converts all of the characters of a string to upper case. |
fn:trim() | Removes white spaces from both ends of a string. |
Reference : http://www.tutorialspoint.com/jsp/jsp_standard_tag_library.htm
[JSP] Security ( 보안 ) (0) | 2019.02.15 |
---|---|
[JSP] Database CRUD (데이터베이스 연동) (0) | 2019.02.15 |
[JSP] Page Redirection ( 페이지 리디렉션 ) (0) | 2019.02.15 |
[JSP] File Upload ( 파일 업로드 ) (0) | 2019.02.15 |
[JSP] Session ( 세션 ) (0) | 2019.02.15 |