【JSTL入門】x:outタグを使ってXPath式の結果をJSPに出力する方法
JSPでXMLデータを扱う際、XPath式の評価結果を画面に表示したいケースは多くあります。そんなときに活躍するのが、JSTL(JSP Standard Tag Library)のXMLタグライブラリに含まれる<x:out>タグです。
<x:out>タグは、指定したXPath式の評価結果を出力します。その役割は、JSPのスクリプトレット構文である<%= %>と同等です。スクリプトレットを使わずにXMLデータを表示できるため、可読性の高いJSPページを作成できます。
<x:out>タグの属性一覧
<x:out>タグには、以下の2つの属性が用意されています。
| 属性 | 説明 | 必須 | デフォルト値 |
|---|---|---|---|
| select | 文字列として評価されるXPath式。XPath変数を使うのが一般的です | 必須 | なし |
| escapeXml | 特殊なXML文字(<、>、&など)をエスケープするかどうかを指定します | 任意 | true |
実装例:x:outとx:parseの組み合わせ
ここでは、<x:out>タグと、XMLを解析するための<x:parse>タグを組み合わせたサンプルコードを見ていきましょう。
<%@ taglib prefix = "c" uri = "https://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix = "x" uri = "https://java.sun.com/jsp/jstl/xml" %>
<html>
<head>
<title>JSTL x:out Tags</title>
</head>
<body>
<h3>Books Info:</h3>
<c:set var = "xmltext">
<books>
<book>
<name>Padam History</name>
<author>ZARA</author>
<price>100</price>
</book>
<book>
<name>Great Mistry</name>
<author>NUHA</author>
<price>2000</price>
</book>
</books>
</c:set>
<x:parse xml = "${xmltext}" var = "output"/>
<b>The title of the first book is</b>:
<x:out select = "$output/books/book[1]/name" />
<br>
<b>The price of the second book</b>:
<x:out select = "$output/books/book[2]/price" />
</body>
</html>コードの解説
このサンプルでは、以下のような流れで処理が行われています。
1. <c:set>タグを使って、書籍情報を含むXMLデータを変数「xmltext」に格納します。
2. <x:parse>タグでXMLテキストを解析し、結果を変数「output」に保存します。
3. <x:out>タグのselect属性にXPath式を指定し、1冊目の書籍名と2冊目の書籍の価格を取り出して表示します。
XPath式の「book[1]」「book[2]」のようにインデックスを指定することで、特定の要素にアクセスできる点に注目してください。
実行結果
上記のコードを実行すると、ブラウザには次のように表示されます。
Books Info: The title of the first book is: Padam History The price of the second book: 2000
このように、<x:out>タグを使えば、XPath式による柔軟なデータ抽出と、シンプルな出力処理を組み合わせることができます。XMLデータを扱うJSPアプリケーションを開発する際には、<x:parse>との組み合わせをぜひ覚えておきましょう。
-
【初心者向け】Macで印刷する方法|基本操作からPDF保存まで徹底解説
Macの画面上でドキュメントを読んだり編集したりするのは便利ですが、あえて紙に印刷してみると、文章の弱点に気づけたり、パソコンの通知による気が散りを防げたりと、思わぬメリットがあります。 さらに、印刷しておけば書類を長期保存でき、リンク切れの心配もありません。画面から離れて目を休めるきっかけにもなるでしょう。 Macを使い始めたばかりの方は、印刷のやり方がすぐにはわからないかもしれません。この記事では、MacBookやiMacなど、あらゆるMacでかんたんに印刷する方法をご紹介します。 Macで印刷するための準備 まず必要なのは、当然ながらMac本体とプリンターです。プリンターの接続や初期設定
-
MacBookで印刷する方法|USB・Wi-Fi接続の手順と印刷設定をわかりやすく解説
MacBookでの印刷はとても簡単です。プリンターをUSBまたはWi-Fiで接続し、ほとんどのアプリで「command + P」を押すだけで印刷できます。 筆者は2019年製MacBook Proのユーザーであり、Macの専門家として、Wi-Fi経由でもUSB接続でも日常的に印刷を行っています。このガイドでは、その具体的な手順をわかりやすくご紹介します。それでは始めましょう。 MacBookで印刷する基本手順 MacBookからの印刷はシンプルで、それほど時間もかかりません。まずは、プリンターをMacBookに接続してセットアップする必要があります(おすすめのMac対応プリンターについて