- 浏览: 576273 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (411)
- webservice (3)
- oracle (37)
- sqlserver (8)
- j2ee (56)
- linux (7)
- javaweb (47)
- office (1)
- struts (23)
- hibernate (11)
- spring (29)
- 网络 (2)
- tomcat (13)
- tongweb (0)
- weblogic (0)
- powerdesiginer (3)
- svn (3)
- js (20)
- ie (2)
- 编译 (3)
- css (2)
- 操作系统 (5)
- Android (41)
- jbpm4.3 (1)
- fckeditor (3)
- 操作excel (2)
- db2常用命令 (1)
- ibatis (5)
- mysql (16)
- 表达式语言 (1)
- java方式调用存储过程 (1)
- ca (1)
- linux客户端 (1)
- 电子数码 (1)
- 行业应用 (12)
- 开发工具 (4)
- 面试 (1)
- 计算机原理 (1)
- NOSQL (5)
- 虚拟机 (1)
- nginx (0)
- velocity (2)
- jndi (1)
- spring mvc (39)
- springmvc (32)
- 安全 (5)
- htmleditor (6)
- iphone4 (1)
- html (4)
- jstl (2)
- ckeditor (5)
- 连接池 (1)
- jquery (6)
- 分页 (1)
- 技术研发规则 (1)
- javamail (1)
- maven (2)
- upload (1)
- log (1)
- 测试 (10)
- spring roo (1)
- 版本控制 (2)
- find bugs (0)
- jsf (0)
- springroo (0)
- 小道理 (1)
- 小道理,技术标准 (1)
- jsf (0)
- bitbao (2)
- redmine (3)
- 团队意识 (1)
- mybatis (2)
- jquery mobile (1)
- flexpaper (0)
- json (4)
- URLRewriteFilte (1)
- html5 (1)
- 都乐保活动 (0)
- openfire (0)
- TreeMap (1)
- build (0)
- javaweb,tag (0)
- algorithm (1)
- tag (2)
- 扯淡 (0)
- mac (2)
- 叶一火(老一) (1)
- 游玩 (1)
- 编码 (1)
- 上线部署 (0)
- 研发管理 (0)
- thumbnailator (2)
- 旅游 (0)
- bingweibo (1)
- 杂谈 (4)
- ktv (1)
- weibo (1)
- 爱情 (2)
- 饮食 (1)
- MediaWiki (1)
- git (1)
- 版本库 (1)
- servlet (1)
- 感悟 (1)
- 人生 (1)
- highcharts (1)
- poi (0)
- websphere (0)
- php (1)
最新评论
-
woshixushigang:
good
org.springframework.beans.TypeMismatchException: Failed to convert property valu -
nathanleewei:
org.springframework.jdbc.core.B ...
org.springframework.beans.TypeMismatchException: Failed to convert property valu -
浪禾木:
请问是ckeditor\contents.css吗?改过以后 ...
ckeditor自动换行问题 -
simusuishi:
刚哥威武!
ckeditor取值赋值问题 -
a455642158:
收割完毕……
Android开源项目源码下载(不断更新中)
最近项目需要搜索出全部的代理人信息及代理人的案例信息,展示到页面的效果如图:
以上结果展示出了代理人的相关信息,及这个人的案例信息。
/** * 搜索保险代理人 * */ @RequestMapping(value = "/search") public String indexSearch(ModelMap modelMap) { // 可以抽取出单独的方法 UDBUserDao userDao = AppContext.getBean("userDao", UDBUserDao.class); CasesDao caseDao = AppContext.getBean("casesDao", CasesDao.class); String name = this.request.get().getParameter("searchname") == null ? "" : this.request.get().getParameter("searchname"); int pageSize = AppUtils.getIntValue(CMConfig.getProperty("pageSize")); int currPageNum = AppUtils.getIntPage(this.request.get().getParameter( "page.currPageNum")); page.setCurrPageNum(currPageNum); page.setPageSize(pageSize); StringBuffer sql = new StringBuffer(); sql.append(" and name like '%").append(name).append("%'") .append(" and status & ").append(JournalDaily.STATUS_DELETED) .append(" != ") // 未删除 .append(JournalDaily.STATUS_DELETED); page.init(AppConstant.DATABASE_SCHEMA_UDB_BB_USER + "." + AppConstant.DATABASE_TABLE_UDB_USER, " CONVERT( name USING gbk ) COLLATE gbk_chinese_ci ", pageSize, page.getCurrPageNum(), sql.toString(), ""); /* List<AccountUser> userlist = userDao.getSearchUser(name); */ List<AccountUser> userlist = userDao.getSearchUser(page.getSQL()); List<Map<AccountUser, List<Cases>>> usercases = new ArrayList<Map<AccountUser, List<Cases>>>(); for (AccountUser accountUser : userlist) { Map<AccountUser, List<Cases>> m = new HashMap<AccountUser, List<Cases>>(); List<Province> provinces = AppProvinceAndCity.provinces; if (accountUser.getProvince() == null) { accountUser.setCityname("(尚未填写地区)"); } else { for (Province province : provinces) { if (province.getCode() == accountUser.getProvince()) { accountUser.setCityname(province.getValue()); break; } } } List<Cases> clist = caseDao.criteriaQueryByUserid( accountUser.getUid(), " order by createtime desc"); ArrayList<ListItem> list = AppConstant.INSURANCE_COMPANY; for (ListItem listItem : list) { if (accountUser.getCompany() == listItem.getKey()) { accountUser.setCompanyname(listItem.getValue()); break; } } m.put(accountUser, clist); usercases.add(m); } modelMap.put("page", page); modelMap.put("searchname", name); modelMap.put("usercases", usercases); this.model.get().addAttribute("title", "搜索_" + CMConfig.getProperty("default.title")); return "search/search"; }
List<Map<AccountUser, List<Cases>>> usercases = new ArrayList<Map<AccountUser, List<Cases>>>();
注意:map 是无序插入数值的,跟list不同,如果采用map封装值的话,你会发现页面展示时候排序凌乱,而且每次访问都是不同的结果。
所以要封装到List里面,这就涉及到如何遍历问题。
遍历List 结果为map,map为 map<accountUser,List<cases>>
key,和value都是封装的,所以还需要遍历。
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ include file="/WEB-INF/view/includes.jsp"%> <%@ include file="/WEB-INF/view/header.jsp"%> <% String path = request.getContextPath(); %> <!--nav--> <div id="nav_wrap"> <ul id="nav"> <li></li> <li></li> </ul> </div> <!--nav end--> <!--search_content--> <div id="search_content"> <div class="search_type"> <form action='<spring:url value="/search"></spring:url>' method="post"> <input type="text" value="${searchname}" class="search_text" name="searchname" /> <input type="submit" value="搜索" class="search_button" /> </form> </div> <c:if test="${!empty usercases}"> <h4 class="search_tips">找到相关结果共${page.rowCounts}条</h4> </c:if> <c:forEach items="${usercases}" var="usercases"> <c:forEach items="${usercases}" var="map"> <div class="search_piece"> <!-- <a href='<spring:url value="/profile?uid=${map.key.uid}"></spring:url>' title=""><img src="${map.key.photo}" alt="" class="search_photo" /></a> --> <a href='<spring:url value="/profile?uid=${map.key.uid}"></spring:url>' title="" target="_blank"> <c:choose> <c:when test="${empty map.key.photo}"><img src="/static/images/no_photo.png" alt="" class="search_photo" /> </c:when> <c:otherwise> <img src="${map.key.photo}" alt="" class="search_photo" /> </c:otherwise> </c:choose> <cite>${map.key.name}</cite> </a> ${map.key.companyname} ${map.key.department} <br /> 手机:${map.key.cellphone} <p> 我是来自${map.key.cityname=="省"?"暂无地区":map.key.cityname}的<cite>${map.key.name }</cite>。我愿竭尽全力让我的家人及朋友都拥有人寿保险的保障。无后顾之忧。愿所有的朋友都能一生太平安康!长命百岁! </p> <dl> <dt>最近案例:</dt> <c:forEach items="${map.value }" var="cases" begin="0" end="1"> <dd> <a href='<spring:url value="/cases/showCaseForFront?id=${cases.id}"></spring:url>' title="${cases.title}">${cases.title}</a>${cases.title} </dd>${cases.updatetime } </c:forEach> </dl> </div> </c:forEach> </c:forEach> <!--pages--> <div class="pages_wrap"> <div class="pages"> <c:if test="${!empty usercases}"> <p:btn url="/search" currentPage="${page.currPageNum}" countSize="${page.rowCounts}" pageKey="page.currPageNum" params="{searchname:${searchname}}" pageSize="${page.pageSize}" selectPage="select" /> </c:if> </div> </div> <!--pages end--> <!--no_result--> <c:if test="${empty usercases}"> <p class="fs14 tace h30 lh30">抱歉!没有找到与“${searchname}”相关的内容</p> </c:if> <!--no_result end--> <div class="search_type"> <form action='<spring:url value="/search"></spring:url>' method="post"> <input type="text" value="${searchname}" class="search_text" name="searchname" /> <input type="submit" value="搜索" class="search_button" /> </form> </div> </div> <%@ include file="/WEB-INF/view/footer.jsp"%>
以上涉及三重遍历。
发表评论
-
日期比较
2013-06-13 16:21 1165比较日期: function compareDate( ... -
Arrays.asList详解
2012-09-10 09:52 885Arrays.asList详解 记得以前写过一 ... -
Collections.addAll
2012-09-07 18:04 2324collections用法以及list 简单实例 Colle ... -
string
2012-09-06 17:20 886String a = "ab"; ... -
图片复制
2012-07-05 11:53 1066import java.io.File;import java ... -
thumbnailator 图片缩放
2012-07-04 20:10 1373Thumbnailator是一个用来生成图像缩略图的 J ... -
java File
2012-06-29 13:53 1268直接下载的,整理的很好,这里做个记录,基础的东西都是。 Fi ... -
mysql 时间比较
2012-06-05 19:57 1弱智得问题,分开写 SELECT * FROM bb_ ... -
split
2012-05-23 10:46 1196//String[] idArr = StringUtil ... -
(转)关于Integer大小比较的问题
2012-05-18 10:32 871关于Integer大小比较的问题 昨天跟朋友一起 ... -
toString
2012-05-14 20:01 998public abstract class ToStringB ... -
io读取操作
2012-03-09 16:18 955public void writeFile(Strin ... -
string[] to map
2012-03-03 17:23 1079public static Map<Inte ... -
tomcat中文问题的解决
2012-03-01 09:55 856第一,存文件必须以一种编码存;读文件也必须以一种编码读,如不特 ... -
java方式将汉字转成拼音
2012-02-24 13:02 1058/** * 需要一个开源的jar包pinyin4j-2.5. ... -
System.getProperty(key)
2012-02-15 15:08 1014public static void main(String ... -
CodeFilter
2012-05-22 11:14 834package com.bitbao.cm.common.ut ... -
Integer值比较误区
2012-05-22 11:14 926例子: Integer i1 = 12; I ... -
容易忽略的for循环问题
2012-01-18 15:33 11711、项目中对用户操作的结果进行审核时候,出现一个问题,如果对省 ... -
java实现的加密工具类(支持MD5和SHA)
2012-01-13 16:08 1267版权声明: dtstudy原创文章,转载请注明出处: h ...
相关推荐
除了`<c:forEach>`,JSTL还提供了其他遍历标签,如`<c:forTokens>`用于遍历字符串中的分隔符。同时,JSTL还可以和其他标签库(如fmt、sql、function等)配合使用,实现更复杂的逻辑。 总之,JSTL遍历是Java Web开发...
对于Map,`<c:forEach>`会遍历键值对,`var`属性可以分别设置为`key`或`value`来访问键或值。若要同时访问键和值,可以使用`varStatus`属性创建一个迭代状态对象。例如: ```jsp <c:forEach items="${map}" var=...
<tr><br> <td>姓名</td><br> <td>年龄</td><br> <td>所属组</td><br> </tr><br> <c:forEach var="user" items="${userlist}"><br> <tr><br> <td><c:out value="${user.username}"/></td><br> <td><c:out value="${...
<artifactId>jstl</artifactId> <version>1.2</version> <artifactId>jsp-api</artifactId> <version>2.2</version> <artifactId>mysql-connector-java</artifactId> <version>8.0.28</version> ...
<td width="594" height="16" valign="top" background="/images/index_13.jpg"><script language='JavaScript' type='text/JavaScript' src='/Article/js/menu.js'></script> <script type='text/javascript' ...
<welcome-file-list> <welcome-file>index.jsp</welcome-file> <welcome-file>index.html</welcome-file> </welcome-file-list> <jsp-config> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/core...
<artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.36</version> </...
<artifactId>jstl</artifactId> <version>1.2</version> </dependency> <!-- servlet、jsp、jstL所需要的依赖end--> <!--处理日期格式--> <dependency> <groupId>joda-time</groupId> ...
对于嵌套的集合(例如:List中包含List),使用`c`标签库(JSTL)进行遍历是一种常见的做法。本文将详细介绍如何利用`c:forEach`标签来遍历这种嵌套的数据结构。 #### 1. 基础知识介绍 在Java Web项目中,通常会...
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <html> <head> <title>网上订餐系登录系统</title> <SCRIPT language="javascript" src="/js/javaScript.js"></SCRIPT> </head> <body> ...
1. `<c:forEach>`:用于遍历集合、数组或迭代对象,实现循环操作。 2. `<c:forTokens>`:对字符串进行分割,然后对每个分割出来的元素进行循环处理。 **使用JSTL的好处**: - 提高代码的可读性:通过使用XML样式的...
List<String> dataList = new ArrayList<>(); dataList.add("数据1"); dataList.add("数据2"); // ... request.setAttribute("dataList", dataList); ``` 3. 将集合传递到JSP:通过`request....
List<User> users = userDAO.getAllUsers(); request.setAttribute("users", users); RequestDispatcher dispatcher = request.getRequestDispatcher("jsp/page.jsp"); dispatcher.forward(request, response); ...
<artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> </dependency> </...
List<Users> list = new ArrayList<>(); list.add(new Users(1, "张三", 20)); list.add(new Users(2, "李四", 22)); list.add(new Users(3, "赵武", 25)); model.addAttribute("list", list); return "user...
<title>遍历Map示例</title> </head> <body> <c:set var="map2" value="${requestScope.map2}" /> <c:forEach var="item" items="${map2}"> ${item.key} => ${item.value}<br/> </c:forEach> </body> </html> ``` ...
<title>JSTL应用示例</title> </head> <body> <table border="1"> <tr> <th>用户名</th> <th>邮箱</th> </tr> <c:forEach items="${users}" var="user"> <tr> <td>${user.name}</td> <td>${user.email}</...
<groupId>javax.servlet.jsp.jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>...
<artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> </dependency> </...
<artifactId>jstl</artifactId> </dependency> <!-- Servlet API --> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> </dependency> <!-- JSP API --> ...