English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
JSP高度なチュートリアル
JSP標準タグライブラリ(JSTL)は、JSPアプリケーションの一般的な核心機能をエンブレスするJSPタグコレクションです。
JSTLタグが提供する機能に基づいて、それを一般的な、構造化されたタスク、例えばループ、条件判定、XMLドキュメント操作、国際化タグ、SQLタグに分類できます。これらに加えて、JSTLを使用してカスタムタグを統合するフレームワークも提供しています。5のカテゴリです。
コアタグ
フォーマットタグ
SQLタグ
共有データベース接続内でネストされたデータベース動作要素を提供し、すべてのステートメントを1つのトランザクションとして実行します
JSTL関数
Apache TomcatにJSTLライブラリをインストールする手順は以下の通りです:
Apacheの標準タグライブラリからダウンロードしたバイナリパッケージ(jakarta-taglibs-standard-current.zip)。
をダウンロードして jakarta-taglibs-standard-1.1.2.zip パッケージを解凍し、 jakarta-taglibs-standard-1.1.2/lib/ の下の2つの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タグを使用する前に、あなたの<Tomcatインストールディレクトリ>\libにXMLおよびXPathに関連するパッケージをコピーする必要があります:
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() | 先頭と末尾の空白文字を削除 |