请教logic:iterate 里面的id和name写什么,对应哪里?谢谢!
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- iteye_18036 2008-09-13 21:17关注
[code="java"] [/code]
name属性:是你放置Bean的集合,在你的这段代码中:
[code="java"]public class QueryAction extends Action {public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {EmpDao empDao = new EmpDao();
ArrayList list = empDao.empName();
//System.out.println(list);
request.setAttribute("list", list);return new ActionForward("/display.jsp");
}
} [/code]
[code="java"]request.setAttribute("list", list);[/code]你是将list放入到request范围内,对应的名字是list,如果你要是写成[code="java"]request.setAttribute("myList", list);[/code],那么,logic:iterator中的name属性就要为"myList".
logic:iterator中的id属性,其实是你要从你的集合中取出的Bean的名字,这个名字是任意起的,主要是下面的标签中的name属性要跟logic:iterator中的id属性对应上.其实这里的是这样的,首先logic:iterator标签会把name属性值为list的集合里的bean逐一取出来,每取出来一个,就把他存到名为id属性的值的pageContext范围内,一看代码你就能明白:
主要代码:
[code="java"]//首先取出List,getAttribute()方法中的值就是logic:iterator标签的name
//值
List list=request.getAttribute("list");
//然后把取出来的bean存入pageContext范围内,对应的名字就是id的值
pageContext.setAttribute("emp",bean);
//bean:write标签其实就是利用反射把Bean从相应的范围内取出
pageContext.getAttribute("emp");[/code]
大体过程就是这样,希望对楼主有帮助本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 matlab计算中误差
- ¥15 对于相关问题的求解与代码
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料
- ¥15 使用R语言marginaleffects包进行边际效应图绘制
- ¥20 usb设备兼容性问题
- ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊