c:forEach 标签建List提供泛型实例



jsp c:forEach 标签建List提供泛型实例。实例化ForEachToList对象,属性设置方法。Map类型数据的遍历方法。

ForEachToList.java源码:

package com.cn.foreach;

public class ForEachToList {

private int id;
private String name;
private int age;
private String sex;
private String address;
private String birthday;
private String mobile;
private String tel;
private String city;
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getTel() {
return tel;
}
public void setTel(String tel) {
this.tel = tel;
}
}

 jsp_forEacheToColor.jsp源码:

<%@ page language=”java” import=”java.util.*” pageEncoding=”utf-8″%>
<%@ taglib prefix=”c” uri=”http://java.sun.com/jsp/jstl/core”%>
<%@ page import=”com.cn.foreach.ForEachToList” %>
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>
<html>
<head>
<title>My JSP ‘jsp_forEacheToColor.jsp’ starting page</title>
</head>
<body>
<%
// 新建List,提供泛型。
List<ForEachToList> personList = new ArrayList<ForEachToList>();
// 实例化一个ForEachToList对象
ForEachToList list = new ForEachToList();
list.setId(1); // 往list对象中设置id
list.setName(“张三”); // 往list对象中设置name
list.setAge(20); // 往list对象中设置age
list.setSex(“男”); // 往list对象中设置sex
list.setAddress(“北京市海淀区中关村”); // 往list对象中设置address
list.setBirthday(“2010-01-01″); // 往list对象中设置birthday
list.setMobile(“13838489438″); // 往list对象中设置mobile
list.setTel(“69653234″); // 往list对象中设置tel
list.setCity(“北京”); // 往list对象中设置city
personList.add(list); // 把list对象添加到personList中

ForEachToList list1 = new ForEachToList(); // 实例化一个Person对象
list1.setId(2); // 往list1对象中设置id
list1.setName(“李四”); // 往list1对象中设置name
list1.setAge(20); // 往list1对象中设置age
list1.setSex(“女”); // 往list1对象中设置sex
list1.setAddress(“北京市东城区”); // 往list1对象中设置address
list1.setBirthday(“2009-01-01″); // 往list1对象中设置birthday
list1.setMobile(“13938489438″); // 往list1对象中设置mobile
list1.setTel(“20054879″); // 往list1对象中设置tel
list1.setCity(“北京”); // 往list1对象中设置city
personList.add(list1); // 把list1对象添加到personList中

ForEachToList list2 = new ForEachToList(); // 实例化一个Person对象
list2.setId(3); // 往list1对象中设置id
list2.setName(“王五”); // 往list1对象中设置name
list2.setAge(20); // 往list1对象中设置age
list2.setSex(“男”); // 往list1对象中设置sex
list2.setAddress(“北京市东城区”); // 往list1对象中设置address
list2.setBirthday(“2010-02-01″); // 往list1对象中设置birthday
list2.setMobile(“13738489438″); // 往list1对象中设置mobile
list2.setTel(“20054879″); // 往list1对象中设置tel
list2.setCity(“北京”); // 往list1对象中设置city
personList.add(list2);

request.setAttribute(“personList”, personList); // 把personList集合保存到request中
%>
<table border=”1″>
<tr class=”title”>
<td>编号</td>
<td>姓名</td>
<td>年龄</td>
<td>性别</td>
<td>城市</td>
<td>地址</td>
<td>生日</td>
<td>手机</td>
<td>电话</td>
</tr>
<c:forEach items=”${ personList }” var=”person” varStatus=”varStatus”>
<tr bgcolor=”${ varStatus.index % 2 == 0 ? ‘#EFEFEF’ : ‘#FFFFFF’ }”>
<td>${ varStatus.current.id }</td>
<td>${ varStatus.current.name }</td>
<td>${ varStatus.current.age }</td>
<td>${ varStatus.current.sex }</td>
<td>${ varStatus.current.city }</td>
<td>${ varStatus.current.address }</td>
<td>${ varStatus.current.birthday }</td>
<td>${ varStatus.current.mobile }</td>
<td>${ varStatus.current.tel }</td>
</tr>
</c:forEach>
</table>

</body>
</html>

c_forEachToList.jsp源码:

<%@ page language=”java” import=”java.util.*” pageEncoding=”utf-8″%>
<%@ taglib prefix=”c” uri=”http://java.sun.com/jsp/jstl/core”%>
<%@ page import=”com.cn.foreach.ForEachToList” %>
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>
<html>
<head>
<title>My JSP ‘c_forEachToList.jsp’ starting page</title>
</head>
<body>
<%
// 新建List,提供泛型。
List<ForEachToList> personList = new ArrayList<ForEachToList>();
// 实例化一个ForEachToList对象
ForEachToList list = new ForEachToList();
list.setId(1); // 往list对象中设置id
list.setName(“张三”); // 往list对象中设置name
list.setAge(20); // 往list对象中设置age
list.setSex(“男”); // 往list对象中设置sex
list.setAddress(“北京市海淀区中关村”); // 往list对象中设置address
list.setBirthday(“2010-01-01″); // 往list对象中设置birthday
list.setMobile(“13838489438″); // 往list对象中设置mobile
list.setTel(“69653234″); // 往list对象中设置tel
list.setCity(“北京”); // 往list对象中设置city
personList.add(list); // 把list对象添加到personList中

ForEachToList list1 = new ForEachToList(); // 实例化一个Person对象
list1.setId(2); // 往list1对象中设置id
list1.setName(“李四”); // 往list1对象中设置name
list1.setAge(20); // 往list1对象中设置age
list1.setSex(“女”); // 往list1对象中设置sex
list1.setAddress(“北京市东城区”); // 往list1对象中设置address
list1.setBirthday(“2009-01-01″); // 往list1对象中设置birthday
list1.setMobile(“13938489438″); // 往list1对象中设置mobile
list1.setTel(“20054879″); // 往list1对象中设置tel
list1.setCity(“北京”); // 往list1对象中设置city
personList.add(list1); // 把list1对象添加到personList中


request.setAttribute(“personList”, personList); // 把personList集合保存到request中
%>

<table border=”1″>
<tr class=”title”>
<td>编号</td>
<td>姓名</td>
<td>年龄</td>
<td>性别</td>
<td>城市</td>
<td>地址</td>
<td>生日</td>
<td>手机</td>
<td>电话</td>
</tr>
<c:forEach items=”${ personList }” var=”list”>
<tr>
<td>${ list.id }</td>
<td>${ list.name }</td>
<td>${ list.age }</td>
<td>${ list.sex }</td>
<td>${ list.city }</td>
<td>${ list.address }</td>
<td>${ list.birthday }</td>
<td>${ list.mobile }</td>
<td>${ list.tel }</td>
</tr>
</c:forEach>
</table>
</body>
</html>

c_forEachToMap.jsp源码:

<%@ page language=”java” import=”java.util.*” pageEncoding=”utf-8″%>
<%@ taglib prefix=”c” uri=”http://java.sun.com/jsp/jstl/core”%>
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>
<html>
<head>
<title>My JSP ‘c_forEachToMap.jsp’ starting page</title>
</head>
<body>
<table border=”1″>
<tr>
<td class=”header”>Header Name</td>
<td class=”header”>Header Value</td>
</tr>
<c:forEach var=”item” items=”${ header }”>
<tr>
<td>${ item.key }</td>
<td>${ item.value }</td>
</tr>
</c:forEach>
</table>

</body>
</html>

更多关于c:foreach 循环map解析:

  1. <c:forEach items=”${customerMap}” var=”item”>  
  2.     ${item.code}
  3.     ${item.name}
  4. </c:forEach> 

 

map的结构为: Map customerMap = new HashMap();

 customerMap.put(“code”,”我是code值”);

 customerMap.put(“name”,”我是name值”);

写到这里你应该知道以上的内容了,剩下的省略。

 

另外map对应的value是个对象,如下写法:

  1. <table height=”300″ border=”1″ cellpadding=”1″>  
  2.   <tr>  
  3.     <td width=”396″>  
  4.     <select id=”selectAllList” name=”selectAllList” style=”width:300px” size=”<%=Constants.choicePageCount%>” multiple=”true”>  
  5.         <c:if test=”${!empty customerMap}”>  
  6.             <c:forEach items=”${customerMap}” var=”item”>  
  7.                 <option value=”${item.key }”   
  8.                 title=” 编码:${item.value.customer_num },许可证号:${item.value.license_key },简 称:${item.value.short_name },联系地址:${item.value.contact_address },联系电 话:${item.value.contact_phone }”>  
  9.                 ${item.value.corporate_name }</option>  
  10.             </c:forEach>  
  11.         </c:if>  
  12.     </select>  
  13.     </td>  
  14.   </tr>  
  15. </table>  

<c:foreach循环一个HashMap,map中的value为一个bean,页面获取key即key对应bean中的属性