JSP JSTL <x:forEach>标签:遍历XML文件
<x:forEach> 标签用于根据提供的 XPath 表达式遍历 XML 文件的内容。
语法:
<x:forEach>标签各属性的详细介绍如表所示。
9787111379331
C语言开发宝典
机械工业出版社
79.00
9787111378471
Java开发宝典
机械工业出版社
99.00
语法:
<x:forEach[var="varName"]select="XPathExpression">
[varStatus="varStatusName"]
[begin="begin"][end="end"][step="step"]>
body content
</x:forEach>
<x:forEach>标签各属性的详细介绍如表所示。
属性 | 类型 | 描述 | 引用EL |
---|---|---|---|
select | String | XPath表达式,决定查询结果 | 不可以 |
var | String | 循环体的变量 | 不可以 |
begin | int | 循环的起始位置,包括该位置 | 可以 |
end | int | 循环的终止位置,包括该位置 | 可以 |
step | int | 循环的步长 | 可以 |
varStatus | String | 循环的变量状态 | 不可以 |
示例1
遍历 XML 文件 bookInfo.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:forEach select="$bookInfo/books/book"> <p><x:out select="id/@value"/><br> <x:out select="name"/><br> <x:out select="publish/@value"/><br> <x:out select="sellAmount/@value"/></p> </x:forEach>
示例2
遍历 XML 文件 bookInfo.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:forEach select="$bookInfo/books/book" begin="0" end="2"> <p><x:out select="id/@value"/><br> <x:out select="name"/><br> <x:out select="publish/@value"/><br> <x:out select="sellAmount/@value"/></p> </x:forEach>
典型应用
使用 <x:forEach> 标签遍历 book.xml 文件中的所有图书信息。关键代码如下:<%@page pageEncoding="gbk" contentType="text/html;charset=GBK"%> <%@taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%> <%@taglib prefix="c" uri="/WEB-INF/c.tld"%> <c:import url="book.xml" var="xmlFile" charEncoding="gb2312"/> <x:parse var="tushu" doc="${xmlFile}"/> <x:forEach select="$tushu//book"> <p><x:out select="id/@value"/><br> <x:out select="name/@value"/><br> <x:out select="publish/@value"/><br> <x:out select="price/@value"/></p> </x:forEach>运行结果如下:
9787111379331
C语言开发宝典
机械工业出版社
79.00
9787111378471
Java开发宝典
机械工业出版社
99.00
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算