求struts2 遍历标签遍历Map集合在JSP页面显示

struts2标签 遍历map集合
首先我们来构造几个map集合。
&假设如下代码 都是在ssh配置环境下搭建好,(至少struts2开发环境搭建好)
(1).java 代码 &
& & &下面的student对象包含的字段为
& & &private L
& & &private S
& & &private S
& & &private S
& & &private I
& & & Action中的代码
& & & & & &private Map&String,String&&
& & & & & &private Map&String,Student& studentM&
& & & & & &private Map&String,String[]& arrayM&
& & & & & &private Map&String,List&Student&& listM & // 实现 四个map对象的get 和set方法。
&map=new HashMap&String,String&();&
&map.put(&1&, &one&);&
&map.put(&2&, &two&);&
&studentMap=new HashMap&String,Student&();&
&studentMap.put(&student1&,new Student(new Long(1),&&,&张三1&,&男&,25));&
&studentMap.put(&student2&,new Student(new Long(2),&&,&张三2&,&女&,26));&
&studentMap.put(&student3&,new Student(new Long(3),&&,&张三3&,&男&,27));&
&arrayMap=new HashMap&String,String[]&();&
&arrayMap.put(&arr1&, new String[]{&1&,&2003401&,&leejie&,&male&,&20&});&
&arrayMap.put(&arr2&, new String[]{&2&,&2003402&,&huanglie&,&male&,&25&});&
&arrayMap.put(&arr3&, new String[]{&3&,&2003403&,&lixiaoning&,&male&,&21&});&
&listMap=new HashMap&String,List&Student&&();&
&List&Student& list1=new ArrayList&Student&();&
&list1.add(new Student(new Long(1),&&,&张三1&,&男&,25));&
&list1.add(new Student(new Long(2),&&,&张三2&,&男&,25));&
&list1.add(new Student(new Long(3),&&,&张三3&,&男&,25));&
&listMap.put(&class1&, list1);&
&List&Student& list2=new ArrayList&Student&();&
&list2.add(new Student(new Long(1),&&,&李四1&,&男&,20));&
&list2.add(new Student(new Long(2),&&,&李四2&,&男&,21));&
&list2.add(new Student(new Long(3),&&,&李四3&,&男&,22));&
&list2.add(new Student(new Long(4),&&,&李四4&,&男&,23));&
&listMap.put(&class2&, list2);&
(2).通过上述java代码我们已经构建好了4个map集合。 接下来的重头戏就是如何通过strut2的标签来获取map集合中的值。
&b&1.map中的value为String字符串&/b&&br& & &
&s:iterator value=&map& id=&column&& & &
&s:property value=&#column&/&&br& & & &//这里获取到的值为key=value & &即:键值对
key: &s:property value=&key&/&&br& & & &//这里的key为内置的,我们只要在value中写上key 即会有值
value:&s:property value=&value&/&&br& & &//同样这里的value也为内置的
&/s:iterator& & &
&&b&2.map中的value为Student对象&/b& & &
& &s:iterator value=&studentMap& id=&column&& & &
& &tr& & &
& &&td&&s:property value=&#column&/&&/td& & &
& &&td&&s:property value=&key&/&&/td& &&
& &&td&&s:property value=&value&/&&/td& & //这里的value返回的是一个student对象
& &&td&&s:property value=&value.id&/&&/td& & &//这里获取student对象中的属性值
& &&td&&s:property value=&value.num&/&&/td& & &
& &&td&&s:property value=&value.name&/&&/td& & &
& &&td&&s:property value=&value.sex&/&&/td& & &
& &&td&&s:property value=&value.age&/&&/td& & &
& &/tr& & &
& &/s:iterator& & &
遍历studentMap 还可以用下面方式,跟上面方式效果是一样的
&b&2.map中的value为Student对象&/b& & &
& &s:iterator value=&studentMap& id=&column&& & &
& &tr& & &
& &&td&&s:property value=&#column&/&&/td& & &
& &&td&&s:property value=&key&/&&/td& &&
& &&s:iterator value=&value&&
& &&td&&s:property value=&id&/&&/td& & &
& &&td&&s:property value=&num&/&&/td& & &
& &&td&&s:property value=&name&/&&/td& & &
& &&td&&s:property value=&sex&/&&/td& & &
& &&td&&s:property value=&age&/&&/td& & &
& & &/s:iterator&
& &/tr& & &
& &/s:iterator& &
& &b&3.map中的value为String数组&/b& & &
&&s:iterator value=&arrayMap& id=&column&& & &
& &&tr& & &
& & &td&&s:property value=&#column&/&&/td& &&!--同时取出键和值--&
& & &td&&s:property value=&value[0]&/&&/td& & &
& & &td&&s:property value=&value[1]&/&&/td& & &
& & &td&&s:property value=&value[2]&/&&/td& & &
& & &td&&s:property value=&value[3]&/&&/td& & &
& & &td&&s:property value=&value[4]&/&&/td& & &
& &&/tr& & &
& &&/s:iterator& &&
& & &&b&4.map中的value为list集合&/b& & &
& & & &s:iterator value=&listMap& id=&column&& & &
& & &s:set name=&total& value=&#column.value.size&/& & &//注意&s:set 标签的用法
& & &s:iterator value=&#column.value& status=&s&& & & //这里#column.value 还是一个student的list集合,因而需要再次迭代一次
& & &&tr& & &
& & &&s:property value=&#s.first&/& & & //判断是不是集合中的第一个对象
& & & &&s:if test=&#s.first&&&td rowspan=&${total}&&&s:property value=&#column.key&/&&/td&&/s:if& & &
& & & &&td&&s:property value=&id&/&&/td& & &
& & & &&td&&s:property value=&num&/&&/td& & &
& & & &&td&&s:property value=&name&/&&/td& & &
& & & &&td&&s:property value=&sex&/&&/td& & &
& & & &&td&&s:property value=&age&/&&/td& & &
& & &&/tr& & &
& & &/s:iterator& & &
&&/s:iterator& & &
您对本文章有什么意见或着疑问吗?请到您的关注和建议是我们前行的参考和动力&&
您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。我用struts2标签的iterator 遍历集合,集合有值 但是页面不显示 求大神帮帮忙 以下为JSP代码_百度知道
我用struts2标签的iterator 遍历集合,集合有值 但是页面不显示 求大神帮帮忙 以下为JSP代码
s;s;s;td&td&td&result&& &/ &TD_STYLE2&TD_STYLE2&TD_STYLE2&td&/ && &td class=&/ &lt:property value=& &&gt:property value=&& &//&/&gt:property value=& &einId&td class=& &&tr& &humanName&humanMajorKindName&/&#47:iterator value=& &lt&s;&s:iterator&td class=&quot
提问者采纳
AttrName&s; id='4&#39。元素之间的key和value 冒号隔开value也可以是数据栈里面的char'
当前元素值; label可以有;}&quot:jsp页面定义元素写法 数组或list&#
&lt.list}&s;%{attrV[#/&#47:value=&quot:if test=&quot,每次的迭代数据都有IteratorStatus的实例.index'id&quot.index]}&#39:property value=&#39:property value='2' &lt:被迭代的集合 id=' &lt.Even&&s;s;
value:getLabel(); id=&quot,'%{label}&& status=&quot,它有以下几个方法int getCount()返回当前迭代了几个元素int getIndex()返回当前元素索引boolean isEven()当然的索引是否偶数boolean isFirst()当前是否第一个元素boolean isLast()boolean isOdd()当前元素索引是否奇数&s;&}&quot,' &3&#39.getList(); &st&#39,20:&;
现在的索引是奇数为; 3;s;%{id}&#39:property value=&#39.简单的List类:property value='&gt:iterator&gt.index&#39:iterator&//s;s;s;
attrName is :iterator value=&2&;c' 打印结果为.attrName&quot:&}&:&lt: & id=&quot.Map对象遍历写法如下,'
key :iterator&&s:& or &:status&quot.操作label的属性List 可以写成value=&
status=&map&quot,gay}这2个list的元素是一一对应的; status='number&#39,%{id&quot:property value=&#39.util:property value='/&#47:索引的用法如果指定了status,List&#id:property vlaue='b'id's:&{&#39,&#39:遍历数据栈,一个attrN对应一个attrV&lt:遍历2个&s; attrV {number's;A &&s;&/&gt:遍历mapvalue可以直接定义为;/a's;&String getAttrName(){return && 当然value 还可以写成 value=&{&#39: &4:iterator value=&;/1&:if&1&#39,'s: &s;& ;id&label&Attr&char' id=&quot,集合等等 以下几个简单的demo:property value=&#39:指定集合里面的元素的id
status 迭代元素的索引1;s,'AttrValue&&gt:iterator value=& class Attr{String attrName:property value=&/5'&gt:iterator 可以遍历 数据栈里面的任何数组; 每个元素以都好隔开;
&s;s;st&;value'
& attrN { /#{"List&,&b&quot: &lt:iterator 标签有3个属性;/#&s;
&;/}}&&#47:iterator value=& 当然key 和value 都可以使java 的 Object3,style}List&lt:&%{attrN }&quot:property value='s;123&quot:
1A2A3A4A5A2:iterator&&#47:iterator&gt:iterator value=&&a&key'/
相当于struts2的s:s
提问者评价
其他类似问题
为您推荐:
其他3条回答
& &&&/ &s; &tr&/td&result&TD_STYLE2&
&td class=&
&TD_STYLE2&td& &id&td class=&/
&#td&s;TD_STYLE2&quot.humanName&quot:property value=&&&&#47.humanMajorKindName&
&/&s; &lt:property value=&td class=&&#47.einId&& &lt:property value=&##&#47:iterator value=&&gt&s; id=&tr&s:iterator&gt
&s:property value=&humanName&/&
类似的value=“humanName”
中加上每次遍历的对象名如:value=“result.humanName”
页面引标签了没?
iterator的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁JSP可以传参到LIST或MAP,但LIST嵌套MAP就不会了,求指点
问题补充:rain_08 写道你是指 jsp传递一个list给action吗??一般都是用的实体类吧 然后用List&E& 去封装 还有就是我们一般开发都是从后台传递一个list集合 然后做前台展现 你从前台传参 然后向后台传list吗?
list中嵌套map 你从前台传递的是map类型的数据 然后add到list集合 这个是你要的结果吗
我不想用LIST&E&,那样以后可能要写很多BEAN,我想把LIST&E&改成LIST&MAP&String,String&&
和其它类型没有什么大的区别啊!~~
&s:ite***&
&& &s:property value="key"&
&& &s:property value="value"&
有一种很二的方法,就看LZ愿不愿尝试。
使用jS进行JSON的拼接,就是在JS把你想要的MAP变成JSON的形式,
如:var src=[{id:'42',name:'北京市'},{id:'43',name:'天津'},{id:'44',name:'河北'},{id:'45',name:'山西'},{id:'46',name:'内蒙古'},{id:'47',name:'上海'},{id:'48',name:'江苏'},{id:'49',name:'浙江'},{id:'50',name:'山东'},{id:'51',name:'安徽'},{id:'52',name:'辽宁'},{id:'53',name:'吉林'},{id:'54',name:'黑龙江'},{id:'55',name:'湖北'},{id:'56',name:'湖南'},{id:'57',name:'河南'},{id:'58',name:'江西'},{id:'59',name:'广东'},{id:'60',name:'广西'},{id:'61',name:'海南'},{id:'62',name:'福建'},{id:'63',name:'四川'},{id:'64',name:'重庆'},{id:'65',name:'贵州'},{id:'66',name:'云南'},{id:'67',name:'西藏'},{id:'68',name:'陕西'},{id:'69',name:'甘肃'},{id:'70',name:'新疆'},{id:'71',name:'青海'},{id:'72',name:'宁夏'},{id:'73',name:'香港'},{id:'74',name:'澳门'},{id:'75',name:'台湾'},{id:'76',name:'其它'}];
然后在From表单中定义个隐藏域参数接收src,From表单传值到后台,这个不用讲了吧,Action怎么去拿这个隐藏域参数的value值也不用讲吧? 最后就是这个Json格式的src说白了也就是一个map,JSP页面就是用Json对象去玩,去拿值。后台Action就是Map的方式。
& 不知道我这样说LZ听明白了没&
原来你是怎么传List的?对S2不是很熟悉。如果你以前能传List,那List,List&Map&,List&Map&String, String&&应该都没什么区别,对于传参时对象只是一个List,而List里面的值是什么系统应该并不关心。 实例化List,实例化Map,把Map放到List中,然后把List放到请求中。无论是什么具体的类型,首先它是一个List,只要你以前能传,那List放什么它还是一个List,肯定还是能传的。
用json就行了啊
LZ 的问题不够清楚,你的JSP传到ACTION使用的是什么方式传递的,是指的LIST&MAP&& JSON格式无法转换吗?
你后台定义的是list&Map&String,String&&,那么你前台也必须传List&Map&String,String&&类型的数据才行
试试&s:set 标签
难道你这样写就可以避免写实体类了吗 你能告诉我 jsp传递给action的 list有什么用吗
不太了解 你具体想实现什么 如果非要这么写 可以再后台封装成Map类型的 然后添加到集合里 这样工作量就会更大╮(╯▽╰)╭
List&Map&String,String&& list = new ArrayList&Map&String,String&&();
这样也是可以的呀... 为啥不可以呢?
你是指 jsp传递一个list给action吗??一般都是用的实体类吧 然后用List&E& 去封装 还有就是我们一般开发都是从后台传递一个list集合 然后做前台展现 你从前台传参 然后向后台传list吗?
list中嵌套map 你从前台传递的是map类型的数据 然后add到list集合 这个是你要的结果吗
已解决问题
未解决问题Struts2 JSP中将list,set ,Map传递到Action然后&s:iterator&遍历(三十五) - 慢慢睁开你的眼睛 - ITeye技术网站
博客分类:
---------------List-----------------
1.使用Strut2的的集合对象:在jsp初始化action中的list然后提交到action
2.使用Struts标签,实现多个用户同时注册(注意属性配置文件)
package com.sh.
import java.util.D
public class Register {
package com.sh.
import java.util.ArrayL
import java.util.L
import com.opensymphony.xwork2.ActionS
import com.sh.pojo.R
public class RegisterAction extends ActionSupport {
private static final long serialVersionUID = 1L;
private List&Register&
public List&Register& getRegisters() {
public void setRegisters(List&Register& registers) {
this.registers =
public String execute() throws Exception {
return SUCCESS;
5.RegisterAction-conversion.properties(配置action中list的泛型对象,放在action同一目录下,属性文件的命名为:actionName-version.properties)
Element_registers=com.sh.pojo.Register //Element_是固定的后面接action中的list集合变量名,后面是泛型中的对象类。
6.struts.xml
&?xml version="1.0" encoding="UTF-8" ?&
&!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd"&
&!-- 定义国际化资源文件的基本名称 --&
&constant name="struts.i18n.encoding" value="utf-8"/&
&package name="default" extends="struts-default"&
&!-- 使用list集合 --&
&action name="registerAction" class="com.sh.action.RegisterAction"&
&result name="success"&/success.jsp&/result&
&result name="input"&/login.jsp&/result&
&!-- 使用Set集合 --&
&action name="registerSetAction" class="com.sh.action.RegisterSetAction"&
&result name="success"&/success1.jsp&/result&
&result name="input"&/login3.jsp&/result&
&!-- 使用 HashMap --&
&action name="registerHashMapAction" class="com.sh.action.RegisterHashMapAction"&
&result name="success"&/success3.jsp&/result&
&result name="input"&/login3.jsp&/result&
&/package&
7.login.jsp& 使用 struts2标签 和 OGNL 表达式
&s:form action="registerAction" method="post" theme="simple"&
&ul style="list-style: text-align:"&
&li style="float:width: 155px"&用户名&/li&
&li style="float:width: 155px"&密码&/li&
&li style="float:width: 155px"&年龄&/li&
&li style="float:width: 155px"&生日&/li&
&li style="float:width: 155px"&地址&/li&
&div style="clear:"&&/div&
&!-- 手动声明一个 new int[4] 长度为4 的int 类型的数组--&
&s:iterator value="new int[4]" status="st"&
&ul style="list-style:"&
&li style="float: left"&
&s:textfield name="%{'registers['+#st.index+'].name'}" label="用户名"/&
&li style="float: left"&
&s:password name="%{'registers['+#st.index+'].pwd'}" label="密码"/&
&li style="float: left"&
&s:textfield name="%{'registers['+#st.index+'].age'}" label="年龄"/&
&li style="float: left"&
&s:textfield name="%{'registers['+#st.index+'].birthday'}" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'});" label="生日"/&
&s:textfield name="%{'registers['+#st.index+'].address'}" label="地址"/&
&/s:iterator&
&div&&s:submit value="submit"/&&/div&
8.success.jsp 循环遍历 list 集合
&ul style="list-style: text-align:"&
&li style="float:width: 155px"&用户名&/li&
&li style="float:width: 155px"&密码&/li&
&li style="float:width: 155px"&年龄&/li&
&li style="float:width: 155px"&生日&/li&
&li style="float:width: 155px"&地址&/li&
&div style="clear:"&&/div&
&s:iterator value="registers" status="st"&
&ul style="list-style:"&
&li style="float:width: 155"&
&s:property value="name"/&
&li style="float:width: 155"&
&s:property value="pwd"/&
&li style="float:width: 155"&
&s:property value="age"/&
&li style="float:width: 155"&
&s:property value="birthday"/&
&s:property value="address"/&
&div&&/div&
&/s:iterator&
9.访问
--localhost:8080/Struts2_CollectConversion/login.jsp
填上信息后提交就可以看到成功页面的循环的输出
10.使用 jstl c 标签 和& EL 表达式 实现上面的 批量注册 (注意 数组初始化)
long1.jsp
&form action="${pageContext.request.contextPath}/registerAction.action" method="post"&
&ul style="list-style: text-align:"&
&li style="float:width: 155px"&用户名&/li&
&li style="float:width: 155px"&密码&/li&
&li style="float:width: 155px"&年龄&/li&
&li style="float:width: 155px"&生日&/li&
&li style="float:width: 155px"&地址&/li&
&div style="clear:"&&/div&
&!--注意这里 声明的时候和上面的不一样 new int[4] c标签识别不出来 ,识别的只有一个元素--&
&c:forEach items="new int[]{0,0,0,0}" varStatus="st"&
&ul style="list-style:"&
&li style="float: left"&
&input name="registers[${st.index}].name"/&
&li style="float: left"&
&input name="registers[${st.index}].pwd" /&
&li style="float: left"&
&input name="registers[${st.index}].age"/&
&li style="float: left"&
&input name="registers[${st.index}].birthday" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'});"/&
&input name="registers[${st.index}].address" /&
&/c:forEach&
&div&&input type="submit"/&&/div&
--localhost:8080/Struts2_CollectConversion/login1.jsp
填上信息后和上面的一样。
---------------Set----------------
12.使用Strutgs2的 Set 类型. 遍历所有 和 取其中一个
action
package com.sh.
import java.util.LinkedHashS
import java.util.S
import com.opensymphony.xwork2.ActionS
import com.sh.pojo.R
public class RegisterSetAction extends ActionSupport {
private Set&Register& registers=new LinkedHashSet&Register&();
public Set&Register& getRegisters() {
public void setRegisters(Set&Register& registers) {
this.registers =
public String execute() throws Exception {
// TODO Auto-generated method stub
return SUCCESS;
13.RegisterSetAction-conversion.properties
KeyProperty_registers=name
//KeyProperty 如果是取 单个 就需要这个
Element_registers=com.sh.pojo.Register
14.login3.jsp& (注意 初始化 set 的时候 采用 makeNew[] )
&s:form action="registerSetAction" method="post" theme="simple"&
&ul style="list-style: text-align:"&
&li style="float:width: 155px"&用户名&/li&
&li style="float:width: 155px"&密码&/li&
&li style="float:width: 155px"&年龄&/li&
&li style="float:width: 155px"&生日&/li&
&li style="float:width: 155px"&地址&/li&
&div style="clear:"&&/div&
&!-- 注意 使用了makeNew[] --&
&s:iterator value="new int[4]" status="st"&
&ul style="list-style:"&
&li style="float: left"&
&s:textfield name="%{'registers.makeNew['+#st.index+'].name'}" label="用户名"/&
&li style="float: left"&
&s:password name="%{'registers.makeNew['+#st.index+'].pwd'}" label="密码"/&
&li style="float: left"&
&s:textfield name="%{'registers.makeNew['+#st.index+'].age'}" label="年龄"/&
&li style="float: left"&
&s:textfield name="%{'registers.makeNew['+#st.index+'].birthday'}" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'});" label="生日"/&
&s:textfield name="%{'registers.makeNew['+#st.index+'].address'}" label="地址"/&
&/s:iterator&
&div&&s:submit value="submit"/&&/div&
15.success2.jsp 遍历 Set 和获取 单个
&ul style="list-style: text-align:"&
&li style="float:width: 155px"&用户名&/li&
&li style="float:width: 155px"&密码&/li&
&li style="float:width: 155px"&年龄&/li&
&li style="float:width: 155px"&生日&/li&
&li style="float:width: 155px"&地址&/li&
&div style="clear:"&&/div&
&div&===========遍历所有的=========&/div&
&s:iterator value="registers" status="st"&
&ul style="list-style:"&
&li style="float:width: 155"&
&s:property value="name"/&
&li style="float:width: 155"&
&s:property value="pwd"/&
&li style="float:width: 155"&
&s:property value="age"/&
&li style="float:width: 155"&
&s:property value="birthday"/&
&s:property value="address"/&
&div&&/div&
&/s:iterator&
&div&===========单独去其中的一个(知道其中的key wei admin)========&/div&
&ul style="list-style:"&
&li style="float:width: 155"&
&s:property value="registers('admin').name"/&
&li style="float:width: 155"&
&s:property value="registers('admin').pwd"/&
&li style="float:width: 155"&
&s:property value="registers('admin').age"/&
&li style="float:width: 155"&
&s:property value="registers('admin').birthday"/&
&s:property value="registers('admin').address"/&
16.访问
--http://localhost:8080/Struts2_CollectConversion/login3.jsp
填写信息后& 就会到成功页面 看到遍历所有& 和 取单个
---------------Map----------------
17.使用 Strut2的 Map 类型
package com.sh.
import java.util.HashM
import java.util.M
import com.opensymphony.xwork2.ActionS
import com.sh.pojo.R
public class RegisterHashMapAction extends ActionSupport {
private Map&String,Register& maps=new HashMap&String, Register&();
public Map&String, Register& getMaps() {
public void setMaps(Map&String, Register& maps) {
this.maps =
public String execute() throws Exception {
// TODO Auto-generated method stub
return SUCCESS;
18.属性配置文件 RegisterHashMapAction-conversion.properties
Key_maps=java.lang.String
// Key_ 固定
后面为action的Map属性名
Element_maps=com.sh.pojo.Register
19.login5.jsp
&s:form action="registerHashMapAction" method="post" theme="simple"&
&ul style="list-style: text-align:"&
&li style="float:width: 155px"&用户名&/li&
&li style="float:width: 155px"&密码&/li&
&li style="float:width: 155px"&年龄&/li&
&li style="float:width: 155px"&生日&/li&
&li style="float:width: 155px"&地址&/li&
&div style="clear:"&&/div&
&!-- 注意 【key】 中key 的取值类型和 配置文件中一直--&
&s:iterator value="new int[4]" status="st"&
&ul style="list-style:"&
&li style="float: left"&
&s:textfield name="%{'maps['+#st.index+'].name'}" label="用户名"/&
&li style="float: left"&
&s:password name="%{'maps['+#st.index+'].pwd'}" label="密码"/&
&li style="float: left"&
&s:textfield name="%{'maps['+#st.index+'].age'}" label="年龄"/&
&li style="float: left"&
&s:textfield name="%{'maps['+#st.index+'].birthday'}" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'});" label="生日"/&
&s:textfield name="%{'maps['+#st.index+'].address'}" label="地址"/&
&/s:iterator&
&div&&s:submit value="submit"/&&/div&
20 .success3.jsp 遍历 Map& 和&& 取 单个
&ul style="list-style: text-align:"&
&li style="float:width: 155px"&用户名&/li&
&li style="float:width: 155px"&密码&/li&
&li style="float:width: 155px"&年龄&/li&
&li style="float:width: 155px"&生日&/li&
&li style="float:width: 155px"&地址&/li&
&div style="clear:"&&/div&
&div&===========遍历所有的=========&/div&
&s:iterator value="maps" status="st"&
&ul style="list-style:"&
&li style="float:width: 155"&
&s:property value="value.name"/&
&li style="float:width: 155"&
&s:property value="value.pwd"/&
&li style="float:width: 155"&
&s:property value="value.age"/&
&li style="float:width: 155"&
&s:property value="value.birthday"/&
&s:property value="value.address"/&
&div&&/div&
&/s:iterator&
&div&===========单独去其中的一个= (知道其中的key=0)========&/div&
&ul style="list-style:"&
&li style="float:width: 155"&
&s:property value="maps['0'].name"/&
&li style="float:width: 155"&
&s:property value="maps['0'].pwd"/&
&li style="float:width: 155"&
&s:property value="maps['0'].age"/&
&li style="float:width: 155"&
&s:property value="maps['0'].birthday"/&
&s:property value="maps['0'].address"/&
21.访问
--http://localhost:8080/Struts2_CollectConversion/login5.jsp
填写信息就可以看到结果了
注意 action中 set 和hashmap 都要 初始化 和 有& get 和set 方法
下载次数: 125
浏览: 382640 次
来自: 上海
你好,我采用方法二,ConfigInfo.java 打出的结果 ...
&filter- ...
说了半天,没看到楼主用的啥软件,还分绿色版和安装版。。。
ningv 写道ningv 写道lz你的逻辑有误。例如昨天凌晨 ...
ningv 写道lz你的逻辑有误。例如昨天凌晨1:00跟今天1 ...

我要回帖

更多关于 struts2标签遍历map 的文章

 

随机推荐