在Spring MVC中使用JSTL的c:forEach
标签遍历输出双层嵌套List的数据方式,可采用以下步骤:
1. 引入jstl标签库
要使用JSTL的标签,需要先引入JSTL的标签库。在Maven中可以通过下面的依赖引入:
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
引入标签库后,在JSP页面中通过下面的语句引入JSTL的标签库:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
2. 遍历List嵌套List
假设我们有一个名为data
的List,它包含若干个元素,每个元素又是一个List,我们要遍历输出data
中的所有元素,可以按照以下方式使用c:forEach
标签:
<c:forEach items="${data}" var="item">
<div>
<c:forEach items="${item}" var="subItem">
<span>${subItem}</span>
</c:forEach>
</div>
</c:forEach>
需要注意的是,在外层c:forEach
标签中,我们将data
赋值给了items
属性,并将item
作为循环变量。而在内层的c:forEach
标签中,我们将item
赋值给了items
属性,并将subItem
作为循环变量。
3. 完整示例
下面是一个完整的示例,展示如何使用JSTL的c:forEach
标签遍历输出双层嵌套List的数据:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head><title>双层嵌套List的遍历方式</title></head>
<body>
<h1>双层嵌套List的遍历方式</h1>
<c:forEach items="${data}" var="item">
<div>
<c:forEach items="${item}" var="subItem">
<span>${subItem}</span>
</c:forEach>
</div>
</c:forEach>
</body>
</html>
如果data
是这样的一个List:
List<List<String>> data = new ArrayList<>();
data.add(Arrays.asList("1", "2", "3"));
data.add(Arrays.asList("a", "b", "c"));
则页面输出的HTML源码为:
<html>
<head><title>双层嵌套List的遍历方式</title></head>
<body>
<h1>双层嵌套List的遍历方式</h1>
<div>
<span>1</span>
<span>2</span>
<span>3</span>
</div>
<div>
<span>a</span>
<span>b</span>
<span>c</span>
</div>
</body>
</html>
4. 另一个示例
下面是另一个示例,展示如何使用JSTL的c:forEach
标签遍历输出三层嵌套List的数据:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head><title>三层嵌套List的遍历方式</title></head>
<body>
<h1>三层嵌套List的遍历方式</h1>
<c:forEach items="${data}" var="item">
<ul>
<li>${item[0]}</li>
<c:forEach items="${item[1]}" var="innerItem">
<ul>
<li>${innerItem[0]}</li>
<c:forEach items="${innerItem[1]}" var="subInnerItem">
<li><span>${subInnerItem}</span></li>
</c:forEach>
</ul>
</c:forEach>
</ul>
</c:forEach>
</body>
</html>
如果data
是这样的一个List:
List<List<List<String>>> data = new ArrayList<>();
List<List<String>> item1 = new ArrayList<>();
item1.add(Arrays.asList("Item1", Arrays.asList("1", "2", "3")));
item1.add(Arrays.asList("Item2", Arrays.asList("a", "b", "c")));
data.add(item1);
则页面输出的HTML源码为:
<html>
<head><title>三层嵌套List的遍历方式</title></head>
<body>
<h1>三层嵌套List的遍历方式</h1>
<ul>
<li>Item1</li>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
<ul>
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
</ul>
</body>
</html>
如此便可正确地遍历输出三层嵌套List的数据了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Spring MVC使用jstl 标签c:forEach 遍历输出双层嵌套List的数据方式 - Python技术站