JSP pengolahan data XML
Ketika mengirim data XML melalui HTTP, maka perlu menggunakan JSP untuk menangani dokumen XML masuk dan keluar, seperti dokumen RSS. Sebagai dokumen XML, itu hanya sekelompok teks saja, membuat dokumen XML menggunakan JSP tidak sulit daripada menciptakan sebuah dokumen HTML.
Kirim XML menggunakan JSP
Mengirim konten XML menggunakan JSP dan mengirimkannya sebagai konten HTML. Satu-satunya perbedaan adalah bahwa Anda harus menempatkan atribut halaman konteks diatur ke text / xml. Untuk mengatur atribut konteks, menggunakan <% @ page%> perintah, seperti ini:
<%@ page contentType="text/xml" %>
Berikutnya konten contoh XML dikirim ke browser:
<%@ page contentType="text/xml" %> <books> <book> <name>Padam History</name> <author>ZARA</author> <price>100</price> </book> </books>
Gunakan browser yang berbeda untuk mengakses contoh ini, melihat contoh yang disajikan dalam pohon dokumen.
Pengolahan XML di JSP
Sebelum menggunakan proses JSP XML, Anda perlu XPath dan file terkait XML dalam dua perpustakaan <Directory Instalasi Tomcat> \ lib:
- XercesImpl.jar: Dalam Download ini http://www.apache.org/dist/xerces/j/
- xalan.jar: Dalam Download ini http://xml.apache.org/xalan-j/index.html
File books.xml:
<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>
File main.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %> <html> <head> <title>JSTL x:parse Tags</title> </head> <body> <h3>Books Info:</h3> <c:import var="bookInfo" url="http://localhost:8080/books.xml"/> <x:parse xml="${bookInfo}" 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>
Kunjungi http: // localhost: 8080 / main.jsp, hasilnya adalah sebagai berikut:
BOOKS INFO: The title of the first book is:Padam History The price of the second book: 2000
Gunakan JSP format XML
Ini adalah file XSLT stylesheet style.xsl:
<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl= "http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" indent="yes"/> <xsl:template match="/"> <html> <body> <xsl:apply-templates/> </body> </html> </xsl:template> <xsl:template match="books"> <table border="1" width="100%"> <xsl:for-each select="book"> <tr> <td> <i><xsl:value-of select="name"/></i> </td> <td> <xsl:value-of select="author"/> </td> <td> <xsl:value-of select="price"/> </td> </tr> </xsl:for-each> </table> </xsl:template> </xsl:stylesheet>
Ini adalah file main.jsp:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %> <html> <head> <title>JSTL x:transform 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> <c:import url="http://localhost:8080/style.xsl" var="xslt"/> <x:transform xml="${xmltext}" xslt="${xslt}"/> </body> </html>
Hasilnya adalah sebagai berikut:
Lebih dari Menggunakan JSTL untuk menangani konten XML, silakan berkonsultasi JSP Standard Tag Library .