需求是这样地,我要在主页通过list.action方法显示一个帖子列表页,但在列表右面要显示回复的条数.
列表页面是通过C:foreach遍历list.action返回的list,我要是想得到回复的条数,就得调用通过id查找回复数的action,现在
问题是这个id要如何传给action呢?我怎么在调用list.action显示帖子列表的时候同步显示对应的回复条数呢?
给点思路
列表页面是通过C:foreach遍历list.action返回的list,我要是想得到回复的条数,就得调用通过id查找回复数的action,现在
问题是这个id要如何传给action呢?我怎么在调用list.action显示帖子列表的时候同步显示对应的回复条数呢?
给点思路
现在按你的思路给出方式
先通过 list.action 查出列表 得到 一个 list
<c:forEach var="topic" items="${list}" >
显示帖子的内容.......
<jsp:include page="..../viewQuantity.action?topicId=${topic.id}" /> //这里通过 action 处理响应得到一个专门用于显示回复数量的 JSP 页面,就可以显示数量了
</c:forEach>
显示回复数量的JSP:
<%@ page ..... %>
<span>${quantity}</span>以上就可以解决你现有的问题了第二种左外连接查询:
SELECT topic.id, topic.name ...... , reply.count FROM TOPIC topic
LEFT JOIN REPLY reply ON topic.id = reply.topicId
WHERE .......
GROUP BY topic.id, topic.name ...... // 查了哪些主题表的字段,就要把主题表的字段全部列在这里再有的就是 子查询了:
SELECT topic.id, ..... (SELECT COUNT(reply.id) FROM REPLY reply WHERE .....)
FROM TOPIC topic
WHERE .....取值我就不用说了吧