首页 > 编程笔记 > Java笔记 阅读:82

JSP JSTL <x:parse>标签:解析指定的XML内容

<x:parse> 标签可以解析指定的 XML 内容。

语法:

<x:parse{doc="XMLDocument"|xml1="XMLDocument"}
             {var="var"[scope="scope"]|varDom="var"[scopeDom="scope"]}
             [systemId="systemId"]
             [filter="filter"]/>
<x:parse
         {var="var"[scope="scope"]|varDom="var"[scopeDom="scope"]}
         [systemId="systemId"]
         [filter="filter"]>
  XML Document to parse
</x:parse>


说明:<x:parse> 标签有两种语法格式,这两种语法格式的输出结果完全相同。

<x:parse> 标签各属性的详细介绍如表所示。

<x:parse>标签属性
属性 类型 描述 引用 EL
doc String/Reader 提供解析的XML文件 可以
xml String 同doc属性相同,已不再使用 可以
var String 存储解析后的XML 不可以
varDom String 以org.w3c.dom.Document类型存储解析后的XML文件 不可以
scope String var属性的存储范围 不可以
scopeDom String varDom属性的存储范围 不可以
systemId String XML文件中的URI信息,用于解析XML文件的路径 可以
filter org.xml.sax.XMLFilter 解析XML文件使用的过滤器 可以

示例

首先通过 <c:import> 标签导入 bookInfo.xml 文件,然后通过 <x:parse> 标签解析 bookInfo.xml 文件的内容,最后通过 <x:out> 标签输出 XML 文件中的部分内容,关键代码如下:
<%@taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%>
  <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <c:import url="bookInfo.xml" var="xmlFile" charEncoding="gbk"/>
    <x:parse var="bookInfo" doc="${xmlFile}"></x:parse>
    编号:<x:out select="$bookInfo/books/book/id/@value"/><br>
    书名:<x:out select="$bookInfo/books/book/name/@value"/><br>
    出版社:<x:out select="$bookInfo/books/book/publish/@value"/>
bookInfo.xml 文件的内容如下:
<?xml version="1.0" encoding="gbk"?>
<books>
  <book>
    <id value="1"/>
    <name value="Java开发宝典"/>
    <author value="C语言中文网"/>
    <publish value="机械工业出版社"/>
  </book>
</books>
运行结果如下:
编号:1
书名:Java开发宝典
作者:C语言中文网
出版社:机械工业出版社

Java交流群:739993120(我们会不定期在群内分享Java知识,上传Java资料)

编程帮,一个分享编程知识的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,一篇文章只讲一个知识点。

文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。

文章不涉及代码,不烧脑细胞,人人都可以学习。

当你决定关注「编程帮」,你已然超越了90%的程序员!

编程帮二维码
微信扫描二维码关注

所有教程

优秀文章