位置:首页 » 文章/教程分享 » JSTL x:parse标签

<x:parse>标签用来解析或者通过一个属性或在标签体中指定的XML数据。

属性:

<x:parse>标签具有以下属性:

属性 描述 必须 默认
var 包含已解析的XML数据的变量 No None
xml 文件的文本解析(字符串或阅读器) No Body
systemId 系统标识符URI,用于解析该文件 No None
filter 该过滤器被应用到源文件 No None
doc 要解析的XML文档 No Page
scope 在var属性指定的变量的作用域。 No Page
varDom 包含已解析的XML数据的变量。 No Page
scopeDom 在varDom属性指定的变量的作用域。 No Page

例子:

下面的示例显示了如何解析可以用来读取外部XML文件,它可以被解析:

我们已经看到我们如何能够从给定的文档的正文解析XML。现在,让我们把下面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>

现在,请尝试以下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: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>

现在用http://localhost:8080/main.jsp 访问上面的JSP,这将产生以下结果:

BOOKS INFO:

The title of the first book is:Padam History 
The price of the second book: 2000