最近在一个项目中,要将一个list在客户端输出,而list里面的每个值不是bean,而是map,想好好久,想了个办法,可以实现,代码如下
ArrayList testList=new ArrayList();
HashMap testMap1=new HashMap();
testMap1.put("grade","七年级");
testMap1.put("class","一班");
testMap1.put("master","张三");
testList.add(testMap1);
HashMap testMap2=new HashMap();
testMap2.put("grade","八年级");
testMap2.put("class","二班");
testMap2.put("master","张三");
testList.add(testMap2);
HashMap testMap3=new HashMap();
testMap3.put("grade","九年级");
testMap3.put("class","五班");
testMap3.put("master","李四");
testList.add(testMap3);
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#0033CC" name="tableList">
<tr><td>master</td><td>class</td><td>grade</td></tr>
<logic:iterate id="element" indexId="ind" name="testList" >
<tr>
<td>
<logic:iterate id="elementValue" indexId="idx" name="element">
<logic:equal name="elementValue" property="key" value="master">
<bean:write name="elementValue" property="value"/>
</logic:equal>
</logic:iterate>
</td>
<td> <logic:iterate id="elementValue" indexId="idx" name="element">
<logic:equal name="elementValue" property="key" value="class">
<bean:write name="elementValue" property="value"/>
</logic:equal>
</logic:iterate>
</td>
<td><logic:iterate id="elementValue" indexId="idx" name="element">
<logic:equal name="elementValue" property="key" value="grade">
<bean:write name="elementValue" property="value"/>
</logic:equal>
</logic:iterate>
</td>
</tr>
</logic:iterate>
</table>
master
class
grade
还有更好的方法,欢迎交流,第一次在blog上发文,没有排版,请多见谅!