English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
JSP 고급 강의
JSP 표준 태그 라이브러리(JSTL)는 JSP 태그 모음으로, JSP 애플리케이션의 일반적인 핵심 기능을 포장합니다.
JSTL 태그가 제공하는 기능에 따라, 반복, 조건 판단, XML 문서 작업, 국제화 태그, SQL 태그와 같은 일반적이고 구조화된 작업을 지원합니다. 이 외에도, JSTL를 통합한 커스텀 태그를 사용할 수 있는 프레임워크를 제공합니다.5분류.
핵심 태그
포맷 태그
SQL 태그
공유 데이터베이스 연결에서 내장된 데이터베이스 행위 요소를 제공하고, 모든 문장을 하나의 트랜잭션으로 실행합니다
JSTL 함수
Apache Tomcat에서 JSTL 라이브러리 설치 단계는 다음과 같습니다:
Apache 표준 태그 라이브러리에서 다운로드한 바이너리 패키지(jakarta-taglibs-standard-current.zip)。
다운로드 jakarta-taglibs-standard-1.1.2.zip 패키지를 다운로드하고 압축해제하여 jakarta-taglibs-standard-1.1.2/lib/ 아래의 두 개의 jar 파일로 복사합니다:standard.jar 과 jstl.jar 파일을 /WEB-INF/lib/ 아래로 복사합니다。
tld 아래 필요한 tld 파일을 WEB-INF 디렉토리 아래.
다음과 같은 설정을 web.xml 파일에 추가합니다:
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <jsp-config> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/fmt</taglib-uri> <taglib-location>/WEB-INF/fmt.tld</taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/fmt-rt</taglib-uri> <taglib-location>/WEB-INF/fmt-rt.tld</taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri> <taglib-location>/WEB-INF/c.tld</taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/core-rt</taglib-uri> <taglib-location>/WEB-INF/c-rt.tld</taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/sql</taglib-uri> <taglib-location>/WEB-INF/sql.tld</taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/sql-rt</taglib-uri> <taglib-location>/WEB-INF/sql-rt.tld</taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/x</taglib-uri> <taglib-location>/WEB-INF/x.tld</taglib-location> </taglib> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/x-rt</taglib-uri> <taglib-location>/WEB-INF/x-rt.tld</taglib-location> </taglib> </jsp-config> </web-app>
모든 라이브러리를 사용하려면 각 JSP 파일의 헤더에 <taglib> 태그를 포함해야 합니다。
최히안 태그는 가장 일반적으로 사용되는 JSTL 태그입니다. 핵심 태그 라이브러리를 참조하는 문법은 다음과 같습니다:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
태그 | 설명 |
---|---|
<c:out> | JSP에서 데이터를 표시하는 데 사용되며, <%= ... %>과 같습니다 |
<c:set> | 데이터를 저장하는 데 사용됩니다 |
<c:remove> | 데이터를 제거하는 데 사용됩니다 |
<c:catch> | 오류 상황을 처리하고 오류 메시지를 저장하는 데 사용됩니다 |
<c:if> | 일반 프로그램에서 사용하는 if와 같습니다 |
<c:choose> | 자체적으로 <c:when>와 <c:otherwise>의 부모 태그로 사용됩니다 |
<c:when> | <c:choose>의 자식 태그로, 조건이 성립하는지�断합니다 |
<c:otherwise> | <c:choose>의 자식 태그로, <c:when> 태그가 false로 평가될 때 실행됩니다 |
<c:import> | 절대적이거나 상대적 URL을 검색한 다음 페이지에 내용을 노출합니다 |
<c:forEach> | 다양한 셋 타입을 받을 수 있는 기본 반복 태그 |
<c:forTokens> | 지정된 구분자에 따라 내용을 분할하고 반복적으로 출력합니다 |
<c:param> | 포함이나 리디렉션된 페이지에 파라미터를 전달하는 데 사용됩니다 |
<c:redirect> | 새로운 URL로 리디렉션 |
<c:url> | 선택적 쿼리 파라미터를 사용하여 URL을 생성합니다 |
JSTL 포맷 태그는 텍스트, 날짜, 시간, 숫자를 포맷화하고 출력하는 데 사용됩니다. 포맷 태그 라이브러리를 참조하는 문법은 다음과 같습니다:
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
태그 | 설명 |
---|---|
<fmt:formatNumber> | 지정된 형식이나 정밀도로 숫자를 포맷화합니다 |
<fmt:parseNumber> | 숫자, 통화 또는 퍼센트를 나타내는 문자열을 해석합니다 |
<fmt:formatDate> | 지정된 스타일이나 패턴으로 날짜와 시간을 포맷화합니다 |
<fmt:parseDate> | 날짜 또는 시간을 나타내는 문자열을 해석합니다 |
<fmt:bundle> | 자원 바인딩 |
<fmt:setLocale> | 지역 설정 |
<fmt:setBundle> | 자원 바인딩 |
<fmt:timeZone> | 지역 설정 |
<fmt:setTimeZone> | 지역 설정 |
<fmt:message> | 资源配置 파일 정보 표시 |
<fmt:requestEncoding> | request의 문자编码 설정 |
JSTL SQL 라이브러리는 관계형 데이터베이스(Oracle, MySQL, SQL Server 등)와의 상호작용을 제공하는 태그입니다. SQL 태그 라이브러리를 참조하는 문법은 다음과 같습니다:
<%@ taglib prefix="sql"} uri="http://java.sun.com/jsp/jstl/<%@ taglib prefix="sql"}
태그 | 설명 |
---|---|
sql" %> | <sql:setDataSource> |
데이터 소스를 지정합니다 | <sql:query> |
SQL 쿼리 문장을 실행합니다 | <sql:update> |
SQL 업데이트 문장을 실행합니다 | <sql:param> |
SQL 문장의 매개변수를 지정된 값으로 설정합니다 | <sql:dateParam> |
SQL 문장의 날짜 매개변수를 지정된 java.util.Date 객체 값으로 설정합니다 | <sql:transaction> |
XML 태그
JSTL XML 태그 라이브러리는 XML 문서를 생성하고 처리하는 태그를 제공합니다. XML 태그 라이브러리를 참조하는 문법은 다음과 같습니다: uri="http://java.sun.com/jsp/jstl/<%@ taglib prefix="x"
xml 태그를 사용하기 전에, XML과 XPath와 관련된 패키지를 <Tomcat 설치 디렉토리>\lib에 복사해야 합니다:
XercesImpl.jar
다운로드 주소: http://www.apache.org/dist/xerces/j/
xalan.jar
태그 | 설명 |
---|---|
<x:out> | <%= ... >와 유사하지만, XPath 표현식에만 사용됩니다 |
<x:parse> | XML 데이터를 분석합니다 |
<x:set> | XPath 표현식을 설정합니다 |
<x:if> | XPath 표현식을 판단하여 참이면 본문 내용을 실행하고, 그렇지 않으면 건너뜁니다 |
<x:forEach> | XML 문서의 노드를 반복적으로 처리합니다 |
<x:choose> | <x:when>와 <x:otherwise>의 부모 태그 |
<x:when> | <x:choose>의 자식 태그로, 조건 판단을 수행합니다 |
<x:otherwise> | <x:choose>의 자식 태그로, <x:when>이 false로 평가될 때 실행됩니다 |
<x:transform> | XSL 변환을 XML 문서에 적용합니다 |
<x:param> | <x:transform>와 함께 사용하여 XSL 스타일 시트를 설정하는 데 사용됩니다 |
JSTL은 일련의 표준 함수를 포함하고 있으며, 대부분 일반적인 문자열 처리 함수입니다. JSTL 함수 라이브러리를 참조하는 문법은 다음과 같습니다:
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
함수 | 설명 |
---|---|
fn:contains() | 지정된 서브 문자열을 포함하는 입력 문자열을 테스트 |
fn:containsIgnoreCase() | 지정된 서브 문자열을 포함하는 입력 문자열을 대소문자 구분 없이 테스트 |
fn:endsWith() | 지정된 후缀으로 끝나는 입력 문자열을 테스트 |
fn:escapeXml() | XML 표시 문자로 간주되는 문자를 건너뜀 |
fn:indexOf() | 지정된 문자열이 입력 문자열에서 위치를 반환 |
fn:join() | 배열의 요소를 문자열로 결합하고 출력 |
fn:length() | 문자열의 길이를 반환 |
fn:replace() | 지정된 위치를 입력 문자열에서 대체하고 반환 |
fn:split() | 지정된 구분자로 구분된 문자열을 배열로 변환하고 반환 |
fn:startsWith() | 지정된 프리كس로 시작하는 입력 문자열을 테스트 |
fn:substring() | 문자열의 부분을 반환 |
fn:substringAfter() | 지정된 서브 문자열 이후의 문자열 부분을 반환 |
fn:substringBefore() | 지정된 서브 문자열 이전의 문자열 부분을 반환 |
fn:toLowerCase() | 문자열의 문자를 소문자로 변환 |
fn:toUpperCase() | 문자열의 문자를 대문자로 변환 |
fn:trim() | 최초와 마지막 공백 문자 제거 |