<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ page import="java.util.*"%>
<%@ page import="bean.User"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
int[] ages = { 1, 2, 3, 4, 5 }; // 普通数组,JSTL直接使用JSP赋值表达式来取
List<String> names = new LinkedList<String>(); // List
names.add("Biao");
names.add("彪");
names.add("雷");
request.setAttribute("names", names); // 添加到request
Set<String> set = new TreeSet<String>(); // Set
set.add("One");
set.add("One");
set.add("Two");
set.add("Three");
set.add("Set");
Map<String, String> map = new HashMap<String, String>(); // Map
map.put("1", "黄彪");
map.put("2", "丫头");
map.put("3", "哥哥");
map.put("4", "笨蛋");
List<User> users = new ArrayList<User>(); // JavaBean的List
users.add(new User("黄彪", "xxxxxx"));
users.add(new User("昊天", "xxxxxx"));
users.add(new User("姐姐", "yyyyyy"));
users.add(new User("丫头", "zzzzzz"));
session.setAttribute("users", users); // 添加到session
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Iterator Collections</title>
<style type="text/css">
table {
border-collapse: collapse;
border: 1px solid black;
}
td, th {
border: 1px solid black;
}
tr:nth-child(even) {
background: #eee;
}
</style>
</head>
<body>
<center>
遍历数组:
<c:forEach var="age" items="<%= ages %>">
<c:out value="${age}" />
</c:forEach>
<br />
遍历List:
<c:forEach var="name" items="<%= names %>">
<c:out value="${name}" />
</c:forEach>
<br />
遍历List:
<c:forEach var="name" items="${names}">
<c:out value="${name}" />
</c:forEach>
<br />
<br />
遍历Set:
<c:forEach var="entry" items="<%= set %>">
<c:out value="${entry}" />
</c:forEach>
<br />
遍历Map:
<table>
<tr>
<th>Key</th>
<th>Value</th>
</tr>
<c:forEach var="entry" items="<%= map %>">
<tr>
<td><c:out value="${entry.key}"/></td>
<td><c:out value="${entry.value}"/></td>
</tr>
</c:forEach>
</table>
<br />
遍历UserBean的List:
<table>
<tr>
<th>username</th>
<th>password</th>
</tr>
<c:forEach var="user" items="${users}">
<tr>
<td><c:out value="${user.username}"/></td>
<td><c:out value="${user.password}"/></td>
</tr>
</c:forEach>
</table>
</center>
</body>
</html>
分享到:
相关推荐
下面我们将详细介绍如何使用JSTL EL表达式遍历Map集合。 ### JSTL EL表达式概述 JSTL(JavaServer Pages Standard Tag Library)是一个JSP标签库,它简化了JSP页面的开发,使得JSP能够更专注于显示逻辑,而不是...
最外层的用于遍历Role到其对应的内层Map,内层的用于遍历内层Map的键值对,而最内层的用于遍历List类型的Menu。 EL(表达式语言)是JSP的一个规范,它提供了一种简洁的方式来访问和操作存储在域对象(如request、...
对于嵌套的集合(例如:List中包含List),使用`c`标签库(JSTL)进行遍历是一种常见的做法。本文将详细介绍如何利用`c:forEach`标签来遍历这种嵌套的数据结构。 #### 1. 基础知识介绍 在Java Web项目中,通常会...
jstl判断list中是否包含某个值的简单方法 jstl(JavaServer Pages Standard Tag Library)是 Java web 开发中的一种常用标签库,用于简化 JSP 页的编程。jstl 中判断 list 中是否包含某个值是开发中常见的问题,...
需要注意的是,JSTL中并没有提供直接判断List包含关系的标签,所以这里的解决方案采用了遍历List并逐个比较的穷举方法。实际上,这种方法在List较大时可能会导致性能问题,因为需要对整个列表进行遍历。 为了优化...
2. ****:循环遍历标签,可以遍历数组、集合、Map等。例如,遍历一个List: ```jsp ${list}" var="item"> ${item} ``` 对于复杂类型如`List<User>`,可以通过`varStatus`获取迭代状态: ```jsp ${list}" ...
最后,文档中还提到了将List集合存入Map中,然后再通过遍历Map来输出List中的内容。这说明Map集合可以非常灵活地存储不同类型的数据结构,并且可以通过遍历来访问这些数据。 总结来说,遍历Map集合是在Java编程中...
1. ****:这是一个常用的迭代标签,用于遍历数组、集合、Map等数据结构。例如: ```jsp ${list}" var="item"> ${item.name} ``` 这段代码将遍历名为`list`的集合,并输出每个元素的`name`属性。 2. ****:...
在 JSTL 中,EL(Expression Language)表达式是一种用于获取 JavaBeans 属性值、访问数组或集合元素等的强大工具。EL 表达式的使用极大地减少了 JSP 页面中的脚本代码,使得页面更加清晰。 **示例:** 1. **算术...
- `<c:forEach>`:用于遍历集合、数组、Map等,如: ```jsp ${list}" var="item"> <!-- 循环体 --> ${item} ``` - `<c:forTokens>`:用于处理字符串,根据分隔符将其拆分成多个元素并遍历。 4. **URL操作...
它简化了从请求、会话、应用范围中获取数据的过程,同时也支持数组、列表、Map等数据类型的访问。 EL表达式的语法简洁,如 `${bean.property}` 可以获取JavaBean `bean` 的 `property` 属性。此外,EL还支持算术...
1. **迭代标签**: `c:forEach` 用于遍历集合、数组或Map。 ```jsp ${list}" var="item"> ${item} ``` 2. **条件标签**: `c:if` 和 `c:choose`、`c:when`、`c:otherwise` 组合用于条件判断。 ```jsp ${...
- `<c:forEach>`: 迭代数组、集合、Map等,如`${list}" var="item">`。 - `<c:import>`: 引入外部资源,如HTML、XML或其他JSP页面。 - `<c:redirect>`: 重定向请求到另一个URL。 **4. JSTL Function标签** JSTL的`...
- `<c:forEach>`标签是JSTL中用于遍历集合、数组或Map的标签,它可以遍历数组、集合、枚举或数组范围等。例如: ```jsp ${list}" var="item"> ${item} ``` - `<c:out>`标签通常与迭代一起使用,安全地显示...
`forEach`标签用于遍历集合数据,如数组、列表、Map等。它是JSTL中处理循环逻辑的关键标签。基本语法如下: ```jsp ${list}" var="item" varStatus="status"> <!-- 循环体内容 --> ``` `items`属性定义要遍历的...
- `<c:forEach>` 用于遍历集合(如List、Set、Map等)或执行固定次数的循环。它有多个属性,包括: - `var`:定义循环变量名。 - `items`:要遍历的集合或数组。 - `varStatus`:提供额外的循环状态信息,如`...
- `<c:forEach>`:进行迭代,支持数组、集合、Map等。 - `<c:forTokens>`:根据分隔符将字符串拆分为多个元素并遍历。 - `<c:redirect>`和`<c:url>`:处理URL重定向和构造URL。 **3. 使用JSTL的优势:** - **增强...
- `c:forEach`: 用于遍历集合或数组。 - `items`: 指定要遍历的对象。 - `var`: 指定每次迭代时元素的变量名。 - `c:out`: 用于输出字符串,其中`value`属性指定了要输出的值。 综上所述,“jstl文件检查”涉及到的...
1. **迭代**:`<c:forEach>`标签可以用来遍历集合、数组或Map,如: ```jsp ${list}" var="item"> ${item} ``` 2. **条件判断**:`<c:if>`和`<c:choose>`标签用于进行条件判断,如: ```jsp ${condition}">...
此外,它还可以处理数组、集合、Map等复杂类型。 **3. EL的运算符** EL提供了多种运算符,包括: - 点运算符(.):用于访问对象的属性。 - 索引运算符([]):用于访问数组或集合的元素。 - 运算符(==, !=, <, ...