Latest web development tutorials

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:

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 .