ssh整合<s:iterator>迭代ValueStack问题


1、先来说说ValueStack在本次内容作用
//action中获取valuestack对象,用于保存数据
ActionContext.getContext().getValueStack()
//jsp中通过<s:iterator>迭代取得ValueStack的栈(顶?)的数据

2、将对象放入栈顶:
 ActionContext.getContext().getValueStack().push("aa);
 ActionContext.getContext().getValueStack().getRoot().add(0,"bb");
将数据放入map栈
ActionContext.getContext().getValueStack().set(“a”,”a”);
从值栈中获取数据
 ActionContext.getContext().getValueStack().peek();
ActionContext.getContext().getValueStack().getRoot().get(0);
这里还不是很懂set、和push 的方法原理
这里是我UserAction的方法

	public String findAll() {
		List<User> list=userService.findAll();
		System.out.println(list.get(0).getUsername());
		//ActionContext.getContext().getValueStack().push(list);
		ActionContext.getContext().getValueStack().set("list", list);
		return "findAll";
	}


jsp获取数据迭代代码
	<h1>用户列表</h1>
	<table border="1">
		<s:iterator value="list">
			<tr>
				<td><s:property value="id"/></td>
				<td><s:property value="username"/></td>
				<td><s:property value="password"/></td>
				<td><input type="button" value="编辑"></td>
				<td><button class="del">删除</button></td>
				</tr>
		</s:iterator>
	</table>


如图:


这里我之前是用push保存的,结果迭代不出来,但是看别人也是这样写的能出来?后来发现有个set方法就试试就迭代出来数据了,也不懂为什么,若有大神看到麻烦讲解!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值