我无法弄清楚如何将评论和子评论传递到我的页面
所以我需要传递N row_comment&还有N row_sub_comment(每个评论)
作为例子,我可以有4个评论 第一条评论有16个子评论 第2条评论,共6条评论 第3条评论,26条评论 第4条评论,附3条评论
我的java需要从数据库中提取它们并使用model.AddAttribute将它们传递出去
http://Please.Get.Me
我有三个名为" review"," comments"和" sub_comments" 到目前为止,我已使用上述方法将打印的评论打印在页面上。但是评论可能有评论,每条评论甚至可能有子评论
如何将不同数量的这些数据传递到主页 我知道这样的例子
HTML HTML PAGE HTML PAGE
@RequestMapping("/")
public String home(Model model) {
if (content_comment_status == true)
{
try {
connection = getConnection();
stmt = connection.createStatement();
sql = "SELECT preview_comment_text, preview_Comment_id
FROM preview_comment
WHERE preview_id = 4;";
rs = stmt.executeQuery(sql);
sb = new StringBuffer();
while (rs.next())
{
sub_preview_comment_id = rs.getString("preview_comment_id");
preview_comment_text = rs.getString("preview_comment_text");
try {
//
connection = getConnection();
stmt = connection.createStatement();
sql = "SELECT sub_preview_comment_text, sub_preview_comment_id
FROM sub_preview_comment
WHERE preview_comment_id = from_outside;";
rs = stmt.executeQuery(sql);
sb = new StringBuffer();
while (rs.next()) {
sub_comment_text = rs.getString("sub_comment_text ");
sub_comment_id = rs.getString("sub_comment_id");
}
stmt.close();
connection.close();
}catch(Exception e) {return e.toString();}
}
stmt.close();
connection.close();
}catch(Exception e) {return e.toString();}
}
model.addAttribute{"stuff", java_variables}
I have to pass out N comments and N sub comments somehow
return home;
}
OR
<tr th:each="comment: ${comment}">
<td></td>
<td th:text="${comment.comment_text}" ></td>
<td th:text="${comment.username}" ></td>
<table>
and also N sub comments need to come oput,,, like in a blob where we have comments and sub commenst
for each comment
</table>
</tr>
</table>
答案 0 :(得分:0)
我不得不考虑一下如何回答这个问题,我认为你需要深呼吸并做一些阅读。
您需要了解MVC架构模式。您正在使用C
,因为您使用带有@RequestMapping
注释的Spring控制器,您正在使用V
,这可以通过使用Thymeleaf来证明。您正在使用M
,这可以通过使用您为其分配属性的Spring Model
对象来证明,但您并不像我们大多数人那样使用该模型。您应该使用Spring Data来连接和管理您的数据。其中隐含的是使用普通Java对象作为从表中放置行的位置(这些对象称为POJO
或entity
对象)。 ORM工具处理表行和entity
对象之间的映射任务。 Spring Data使用这些工具,例如Hibernate。
所以,你有一个评论entity
(在评论表中放置行)和评论entity
(你在评论表中放置行),包括任何对评论的评论(小组评论)。
Review
将包含一系列属性,包括Comment
个实体的列表。 Comment
将包含子评论列表。
此时,您可以使用Thymeleaf循环遍历Review
个实体列表以访问其顶级Comment
实体。对于每个Comment
实体,您将循环遍历子Comment
。介于两者之间,你必须自己做。