使用EL表达式forEach遍历list,结果输出是重复行

落叶尘枫 2011-08-27 01:30:49
各位大虾:
江湖急救!小弟使用了EL表达式forEach遍历list,此list有三行不同的记录,每行有五列。页面使用的程序如下:

得到的 List list = facade.getUserList(parameters);
request.setAttribute("userList",list);


<table id="userManagetable">
<tr>
<th>用户账号</th>
<th>用户名称</th>
<th>密码</th>
<th>性别</th>
<th>生日</th>
</tr>
<c:forEach items="${requestScope.userList}" var="person">
<tr>
<td>${person.userId}</td>
<td>${person.userName}</td>
<td>${person.password}</td>
<td>${person.sex}</td>
<td>${person.birthday}</td>
</tr>
</c:forEach>
</table>

输出的结果却是三行重复的内容。请教一下为什么是三个重复的内容呢?list。size()=3,

用户账号 用户名称 密码 性别 生日
123 123 123 M 2011-08-27 10:29:31.0
123 123 123 M 2011-08-27 10:29:31.0
123 123 123 M 2011-08-27 10:29:31.0

...全文
3581 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
江山如此多浇 2014-05-16
  • 打赏
  • 举报
回复
标签应该是没有问题的,可能是你把数据封装成对象的时候出错或者是数据库本来就有重复的数据
小僧空空QAQ 2014-05-16
  • 打赏
  • 举报
回复
亲们,我也出现了这种问题,不过是PHP里面用到的foreach()函数,后来我发现了问题,就是在查询数据库时会按照数组下标检索一遍,还会按照字段名称检索一遍,比如说数据表内数据如下 表名:person,索引:id(00001)、name(张三)、age(18)。程序使用while循环将查询结果存入数组arr,使用foreach函数遍历数组, foreach($arr as $key=>$val) { echo'key='.$key; echo'<br>$val='.$val; } 输出结果: key=0 val=00001 key=id val=00001 key=1 val=张三 key=name val=张三 key=2 val=18 key=age val=18 我找到了原因,因个人技术太菜,请大神解决
你个神经病 2014-05-16
  • 打赏
  • 举报
回复
首先看数据库里的内容是不是重复的.然后看自己在后台Action在遍历的时候是不是添加成了同样的值到list中
sam-fat-chang 2014-05-16
  • 打赏
  • 举报
回复
标签看起来没有什么问题
heremei 2012-05-20
  • 打赏
  • 举报
回复
我也遇到类似的问题,即使数据库里没有任何记录,也会有重复。只要之前输出过就会重复显示(删除后仍然会显示)。不清楚是什么问题,求各位高手指教。
剑客2 2011-08-31
  • 打赏
  • 举报
回复
应该是的得到的list的数据是重复的,所以输出才是重复
zsp198805 2011-08-31
  • 打赏
  • 举报
回复
同感!估计数据库表里面的数据是相同的。
淫生杯具 2011-08-28
  • 打赏
  • 举报
回复
debug或者后台println看下你list放的是啥
傻傻的傻傻傻 2011-08-28
  • 打赏
  • 举报
回复
估计你后台list放的就是重复值
夏天-滴風 2011-08-27
  • 打赏
  • 举报
回复
数据库查询下 看看三条记录是否重复
liyang1271989 2011-08-27
  • 打赏
  • 举报
回复
后台问题, 不是标签问题。。。
cjoy4856 2011-08-27
  • 打赏
  • 举报
回复
LZ不是JSTL的问题 ,是你的lis对象中存放得数据就存在相同的,你看看是否你的list中对象是否相同
yanyuegood 2011-08-27
  • 打赏
  • 举报
回复
你在控制台上测试下你集合中的数据对不对?
飓风zj 2011-08-27
  • 打赏
  • 举报
回复
你看看 的你数据库 或者查询结果是不是本身就是重复的呢??????
LMAOhuaNL 2011-08-27
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 tengai_ygj 的回复:]

那就是你本身集合里的数据是重复的:facade.getUserList(parameters);
[/Quote]
+
tengai_ygj 2011-08-27
  • 打赏
  • 举报
回复
那就是你本身集合里的数据是重复的:facade.getUserList(parameters);

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧