contorller:
HashMap hm1 = service.getFullMeshNodeStateMonitorList("1",node_name,collectTime);
for(int i=0;i<hm1.keySet().toArray().length;i++){
String key = (String)hm1.keySet().toArray()[i];
FullMeshNodeStateMonitorVO vo = (FullMeshNodeStateMonitorVO)hm1.get(key);
System.out.println("status is ==="+vo.getStatedesc());
}
--------------------------------------------------------------------------------------------------------
service:
public HashMap getFullMeshNodeStateMonitorList(String zone_code,String node_name,String collectTime) throws DataAccessException {
FullMeshNodeStateMonitorDAO dao = new FullMeshNodeStateMonitorDAO();
List list = dao.getFullMeshNodeStateMonitorList(zone_code,node_name,collectTime);
HashMap hm = new HashMap();
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
Map row = (Map) iterator.next();
//hm.put((String) row.get("NODE_CODE"),row);
voSet(hm, row);
}
return hm;
}
// 公共的得到记录并且封装到vo的方法
public void voSet(HashMap hm, Map row) {
// 安全域代码
String uuid = (String) row.get("UUID");
String node_code = (String) row.get("NODE_CODE");
String zone_code = (String) row.get("ZONE_CODE");
Timestamp collecttime = (Timestamp) row.get("COLLECTTIME");
String state = (String) row.get("STATE");
String statedesc = (String) row.get("STATEDESC");
FullMeshNodeStateMonitorVO vo= new FullMeshNodeStateMonitorVO();
vo.setUuid(uuid);
vo.setNode_code(node_code);
vo.setZone_code(zone_code);
vo.setCollecttime(collecttime);
vo.setState(state);
vo.setStatedesc(statedesc);
hm.put(node_code, vo);
}
----------------------------------------------------------------------------------------------------------------
jsp:
<%
HashMap hm1=null;
if(request.getAttribute("hm1")!=null){
hm1 =(HashMap)request.getAttribute("hm1");
}
%>
<%for(int i=0;i<strarr.length;i++){%>
<tr>
<!-- 核心业务区begin -->
<td nowrap="nowrap" align="center" >
<div align="center">
<%
//默认认为数据不存在
boolean flag1=true;
for(int j=0;j<hm1.keySet().toArray().length;j++){
String key = (String)hm1.keySet().toArray()[j];
FullMeshNodeStateMonitorVO vo =
(FullMeshNodeStateMonitorVO)hm1.get(key);
if(key.trim().equals(Integer.valueOf(i).toString())){
flag1=false;
%>
<%=vo.getCollecttime().toString().substring(0,10) %>
<%}}%>
<% if(flag1){%>数据不存在<%}%>
</div>
</td>
<td nowrap="nowrap" align="center" >
<div align="center">
<%
//默认认为数据不存在
boolean flag2=true;
for(int j=0;j<hm1.keySet().toArray().length;j++){
String key = (String)hm1.keySet().toArray()[j];
FullMeshNodeStateMonitorVO vo =
(FullMeshNodeStateMonitorVO)hm1.get(key);
if(key.trim().equals(Integer.valueOf(i).toString())){
flag2=false;
%>
<%if(vo.getState().trim().equals("1")) {%> <div style="background-color:#95F959">正常</div><%} %>
<%if(vo.getState().trim().equals("2")) {%> <div style="background-color:#FB7255">失败</div><%} %>
<%}}%>
<% if(flag2){%>数据不存在<%}%>
</div>
</td>
<!-- 核心业务区end -->
</tr>
<%} %>
分享到:
相关推荐
### Map遍历的四种方法 在Java编程语言中,`Map`是一种常用的数据结构,用于存储键值对。为了能够有效地处理和操作这些键值对数据,熟练掌握遍历`Map`的方法至关重要。本文将详细介绍四种不同的遍历`Map`的方式,并...
在Struts2中,Map遍历是一个常见的功能,它允许开发者动态地展示或操作存储在Map中的数据。这个功能在处理表单提交、传递参数或者在视图层展示数据时尤为有用。 首先,让我们理解Map遍历的基本概念。Map是一种键值...
- `std::unordered_map`:遍历哈希表通常需要遍历所有桶,因此其时间复杂度也是O(n),但实际运行速度可能比`std::map`快,尤其是当元素数量很大时。 **查找操作**: - `std::map`:查找操作同样为O(log n),因为...
### Map遍历方法总结 #### 一、引言 在Java编程中,`Map`是一种常用的集合类型,用于存储键值对数据。由于其高效的数据查找特性,在许多场景下都有广泛的应用。对于开发者来说,了解如何有效地遍历`Map`中的元素是...
本文将详细介绍Java中Map集合的三种遍历方法及其应用场景、优缺点等,帮助读者更好地理解和掌握Map的使用技巧。 ### 一、Map简介 `Map`接口是Java集合框架的一部分,它提供了基于键值对的数据存储方式。常见的实现...
### Map遍历方法详解 #### 一、引言 在Java编程中,`Map`是一种常用的集合类型,用于存储键值对数据。由于其高效的数据查找特性,在许多场景下都有广泛的应用。对于开发者来说,掌握如何有效地遍历`Map`中的元素是...
- 在遍历`Map`时,如果在遍历过程中尝试修改`Map`(例如添加或删除元素),可能会引发`ConcurrentModificationException`异常。因此,在遍历的同时不要修改`Map`。 - 使用流API遍历时,虽然代码更简洁,但性能上可能...
`map`函数是Python中一个非常实用且功能强大的内置函数,它可以将一个指定的函数应用于一个或多个序列上的每一个元素,并返回一个迭代器,该迭代器包含了应用指定函数后得到的结果。 #### 二、基本用法 `map`函数...
在Java编程语言中,`Map`接口是集合框架的一个重要组成部分,...当然,选择哪种遍历方法还应考虑具体的应用场景和个人编码习惯。在追求代码可读性和维护性的同时,合理利用这两种遍历策略,可以使程序更加健壮和高效。
* 该方法可以应用于大多数的Map集合操作。 使用values()方法和Iterator迭代器的缺点: * 该方法只能获取Map集合中的值,无法获取键。 * 该方法可能会出现性能问题,如果Map集合非常大。 使用entrySet()方法和...
Map的遍历大体有3种: 1、遍历Map.entrySet():它的每一个元素都是Map.Entry对象,这个对象中, 放着的就是Map中的某一对key-value; 2、遍历Map.keySet():它是Map中key值的集合,我们可以通过遍历这个集合来 ...
以上四种方法都可以用来遍历`Map`集合中的元素,选择哪一种方法取决于具体的应用场景和个人偏好。一般来说,第三种方法(通过增强型`for`循环遍历`Map.entrySet()`)是最为简洁和高效的,因为它能够直接访问键值对,...
Java Map的遍历方式在实际应用中是一个重要的性能优化考虑因素。常见的遍历方式有三种:keySet、entrySet和values。很多开发者推荐使用entrySet,认为它比keySet更高效,因为entrySet能一次性获取键值对,避免了额外...
Java中的`Map`接口主要有三种实现类:`HashMap`、`Hashtable`、`TreeMap`等,这些实现类在实际应用中各有特点。本篇文章将详细介绍如何遍历`Map`集合,并提供两种不同的遍历方法。 #### 二、Map集合遍历方法 #####...
本篇将详细介绍如何在JSP中利用JSTL与EL表达式来访问和遍历Map集合。 首先,JSTL是一个标准的标签库,它提供了一系列预定义的标签,用于处理常见的任务,如迭代、条件判断、XML处理等,避免了在JSP页面中直接写Java...
哈希遍历在实际应用中非常广泛,例如统计词频、数据分析、缓存管理等场景。理解并熟练掌握HashMap的遍历方式,对于提升Java编程效率和代码质量至关重要。在实际工作中,根据需求选择合适的遍历方法,能有效优化代码...
另外,Struts框架提供了一个`<logic:iterate>`标签,虽然它主要用于遍历列表,但也可以应用于Map集合。然而,随着Struts 1逐渐被淘汰,现代项目更倾向于使用Spring MVC或JSF等框架,这些框架通常推荐使用EL表达式...
5. **遍历map**:如果list中的元素是map,可以用`key`和`value`遍历键值对。 ```freemarker [0].properties as entry> 属性名: ${entry.key}, 值: ${entry.value} ``` 6. **反向遍历**:使用`reverse`指令...
在实际应用中,`iterator`标签还支持其他属性,比如`var`用于定义一个局部变量来存储当前迭代的对象,`begin`和`end`用于指定遍历的起始和结束索引,以及`step`来设置每次迭代的步长。这些特性使得`iterator`标签在...
通常情况下,我们会使用数组的内置方法forEach和map来进行数组遍历。虽然它们看起来相似,但在实际应用中,两者有着本质的区别和不同的使用场景。 ### Vue数组遍历方法forEach和map的原理解析 1. **基本使用**: ...