c:foreach动态传值的问题

问题描述

需求是这样地,我要在主页通过list.action方法显示一个帖子列表页,但在列表右面要显示回复的条数.列表页面是通过C:foreach遍历list.action返回的list,我要是想得到回复的条数,就得调用通过id查找回复数的action,现在问题是这个id要如何传给action呢?我怎么在调用list.action显示帖子列表的时候同步显示对应的回复条数呢?给点思路

解决方案

解决方案二:
左链接把2张表的数据一起查出来
解决方案三:
连表查询不是问题我现在的问题是如何调用list.action显示帖子列表的时候同步显示对应的回复条数
解决方案四:
将ID传给action并查值保存,取出时先保存回复条数,再取出来
解决方案五:
从思路的角度上,你的这种思路本身就有问题,按照你的思路,是先把list查询出来,然后再根据每个id再去查询回复条数,那么这样的话,为什么不能一次性的把list,以及每个所对应的回复条数查询出来呢。
解决方案六:
该回复于2011-04-21 10:13:11被版主删除
解决方案七:
引用4楼hh161151的回复:

从思路的角度上,你的这种思路本身就有问题,按照你的思路,是先把list查询出来,然后再根据每个id再去查询回复条数,那么这样的话,为什么不能一次性的把list,以及每个所对应的回复条数查询出来呢。

一个左边接就搞定了,还那么烦的查干嘛,当然要查也可以现在按你的思路给出方式先通过list.action查出列表得到一个list<c:forEachvar="topic"items="${list}">显示帖子的内容.......<jsp:includepage="..../viewQuantity.action?topicId=${topic.id}"/>//这里通过action处理响应得到一个专门用于显示回复数量的JSP页面,就可以显示数量了</c:forEach>显示回复数量的JSP:<%@page.....%><span>${quantity}</span>以上就可以解决你现有的问题了第二种左外连接查询:SELECTtopic.id,topic.name......,reply.countFROMTOPICtopicLEFTJOINREPLYreplyONtopic.id=reply.topicIdWHERE.......GROUPBYtopic.id,topic.name......//查了哪些主题表的字段,就要把主题表的字段全部列在这里再有的就是子查询了:SELECTtopic.id,.....(SELECTCOUNT(reply.id)FROMREPLYreplyWHERE.....)FROMTOPICtopicWHERE.....取值我就不用说了吧
解决方案八:
引用6楼dearfen的回复:

引用4楼hh161151的回复:从思路的角度上,你的这种思路本身就有问题,按照你的思路,是先把list查询出来,然后再根据每个id再去查询回复条数,那么这样的话,为什么不能一次性的把list,以及每个所对应的回复条数查询出来呢。一个左边接就搞定了,还那么烦的查干嘛,当然要查也可以现在按你的思路给出方式先通过list.action查出列表得到一个list……

大哥,你是不是引用错了?我的意思不就是你的那个吗。
解决方案九:
引用7楼hh161151的回复:

引用6楼dearfen的回复:引用4楼hh161151的回复:从思路的角度上,你的这种思路本身就有问题,按照你的思路,是先把list查询出来,然后再根据每个id再去查询回复条数,那么这样的话,为什么不能一次性的把list,以及每个所对应的回复条数查询出来呢。一个左边接就搞定了,还那么烦的查干嘛,当然要查也可以现在按你的思路给出方式先通过list.ac……

呃~~~~~~~~~~我只是引用你的话,后面的都是给楼主说的
解决方案十:
看可不可以把对应ID的回复条数放到list所存放的对象中一并显示出来呢,这些工作就该在业务逻辑层做处理了

时间: 2024-09-19 09:18:17

c:foreach动态传值的问题的相关文章

Jquery 如何动态传值,重新加载页面?

问题描述 比如页面上三个按钮,每点击一个按钮传一个值,重新加载一个下页面. 问题补充:比如页面上三个按钮,每点击一个按钮传一个值,重新加载一个当前页面.huoyj 写道 解决方案 $("#line").change(function(){var lineId = $("#line option:selected").text();$("#lineId").val(lineId);var serverIp=$("#line option:

软件开发-C# 多窗口之间动态传值问题

问题描述 C# 多窗口之间动态传值问题 我在做一个串口接收数据并处理的小软件,在主窗口接收并处理后在TextBox上输出,为了直观的显示数据变化,所以再开一个窗口显示波形. 我采用public类传递数值,为了方便测试,我还顺便传了一个随机数,结果每次随机数传过去了,串口的数据没有传过去. 把随机数生成放在接收事件中一样传递不过去. 传递参数的Public类. public int[] tranTest() { Random rd = new Random(); int[] TranArr = n

关于winform窗体之间的动态传值问题

问题描述 最近在学winform各位大神我想实现的是这样的功能.在Form1中存放一个集合.这个集合里的元素个数实时更新并且不断的传递给Form2使得form2中的接收数组也实时更新.求各位大神指点 解决方案 解决方案二:Form1中的集合设置为一个公开的属性,使得在Form2中可以访问到这个集合中的元素解决方案三:楼上的方法就可以或者通过Form1中封装一个方法,然后通过委托调用获取解决方案四:引用1楼yaotomo的回复: Form1中的集合设置为一个公开的属性,使得在Form2中可以访问到

基于DotNetNuke的动态窗体支持(一)

我在使用了DotNetNuke之后,对其中的UserDefinedTable模块比较感兴趣,并且认真的研究了 UserDefinedTable的数据结构和代码,认为这个模块的开发模式非常不错,于是,就基于这个模块,做了一些扩展的工作:和两年前基于 Joolma的一个FacileForms所做的工作有点类似,就是希望以列表式.灵活展示的方式,让用户可以去定义自己的数据结构,无论是列表.展示还是查询,都希望相对比较方便一些.其实,类似的模块,在DotNetNuke.Drupal.Joomla里面都有

winform中UseControl与winform窗体传值的问题

问题描述 winform中UseControl与winform窗体传值的问题 1.两个窗体Form1,Form2,一个UserControl 2.UserControl上有一个textBox 3.Form1中添加UserControl this.panel2.Controls.Add(control1); 4.想在Form2中获取UserControl上textBox的值,我得到的总是空的? 解决方案 这里应该用动态传值! form1里 public string PassText { get

《Mybatis官方文档》 – 动态 SQL

动态 SQL MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦.拼接的时候要确保不能忘了必要的空格,还要注意省掉一连串列名最后的逗号.利用动态 SQL 这一特性可以彻底摆脱这种痛苦. 通常使用动态 SQL 不可能是独立的一部分,MyBatis 通过一种强大的动态 SQL 语言明显地改进了这种情形,这种语言可以被用在任意的 SQL 映射语句中. 动态 SQL 元素和使用 JSTL 或其他类似基于

php传值方式和ajax的验证功能

PHP前台传值到后台进行验证的3种方式 1.不外乎就是post,get和ajax方式 post和get方式就是在表单上用method方式规定主要就是ajax动态传值进行后台验证 2.ajax 动态传值代码如下 //给调用ajax的这里设一个函数 function u_ajax(uname,upass){ //创建ajax if(window.XMLHttpRequest){ xmlhttp = new XMLHttpRequest(); }else{ xmlhttp = new ActiveOb

eclipse中的static web project 是什么项目?

问题描述 eclipse中的static web project 是什么项目? 如题:上一张图 解决方案 跟前端一样,不过用eclipse写前端有点不好,还是用专业的比较好一些 解决方案二: 静态web项目,不包含jsp 解决方案三: Eclipse新建项目dynamic web project与static web project有什么区别maven项目,web项目的eclipse相关的.classpath,.projecteclipse的安装过程和Web project项目的创建 解决方案四

ajaxValidator 常见问题解决(传参,中文乱码)

ajaxValidator 常见问题解决(传参,中文乱码) 以下是作者对ajaxValidator的声明: ajaxvalidator是大家问的最多的问题,修正一个bug(感谢网友"じ??w√"),并把大家最关心的问题,再做一次阐述. bug现象:无论校验有没有校验通过,当控件再次得到焦点而再次失去焦点的时候tip里的提示就会停滞在得到焦点的提示 历次升级的相关记录: a.为AjaxValidator添加一个addidvalue属性(是否自动添加id和值到url参数后面) 为了修复Aj