日期:2014-05-17  浏览次数:20615 次

struts2 显示map中一个值的问题
Map定义:
Map<Integer,String> stateMap;
key是Integer类型,是状态的代码,存储在数据库中
value是string类型,是状态的名称

我把stateMap存在application中,前台struts2做一个页面,怎么把state的代码用名称显示出来?


------解决方案--------------------
怎么把state的代码用名称显示出来?
你的意思是要显示may中的value值么?

------解决方案--------------------
<s:iterator value="stateMap">
<s:property value="key">
<s:property value="value">
</s:iterator>
------解决方案--------------------
这是映射map.get(rs.getInt("value"))
map里面存着key和value 你在数据库里面查出来Key值,在通过映射,找到value
------解决方案--------------------
<table border="1">
<s:iterator value="dataMap.keySet()" id="class">
<s:iterator value="dataMap.get(#class).keySet()" id="group">
<tr>
<td><s:property value="group"/></td>
<s:iterator value="dataMap.get(#class).get(#group).values()" id="name">
<td><s:property value="name"/></td>
</s:iterator>
</tr>
</s:iterator>
</s:iterator>
</table>
像这种形式用吧。
------解决方案--------------------
不太明白lz的意思
------解决方案--------------------
那不就是了,你的stateMap是以键值对形式存储的啊,key是状态代码,你不想显示,就显示value啊,value是string类型,是状态的名称,
------解决方案--------------------
<s:iterator value="#application.stateMap">
<s:property value="key">
<s:property value="value">
</s:iterator>
------解决方案--------------------
探讨
<s:iterator value="#application.stateMap">
<s:property value="key">
<s:property value="value">
</s:iterator>

------解决方案--------------------

 <%
 Map stateMap=new HashMap();
 stateMap.put(1,"普通用户");
 stateMap.put(2,"管理员");
 stateMap.put(3,"超级管理员");
 application.setAttribute("stateMap",stateMap);
 
 %>
 
 <!-- 这是循环出stateMap所有的值 -->
 <s:iterator value="#application.stateMap" id="state">
 ${state.key}<!-- 你所谓的状态代码 -->
${state.value}<!--代码对应的状态名称 -->
<br/>
 </s:iterator>
 <hr/>
 <!-- 这里根据 状态代码 获取 对应的状态名称 -->
 <%
 //假设用户的state 值是 3
 request.setAttribute("userState",3); 
 %>
<!-- 此处 根据 key 获取 value -->
<s:iterator value="#application.stateMap[#request.userState]" id="stateName">
<s:property value="stateName" />
</s:iterator>

是要这种效果么?
------解决方案--------------------
探讨
这是映射map.get(rs.getInt("value"))
map里面存着key和value 你在数据库里面查出来Key值,在通过映射,找到value