资源评论列表查询设计
评论信息数据结构
public class CommentInfoDO {
//评论id
private int commentId;
//评论内容
private String content;
//评论人在本系统的id 登录后可以取得
private int authorSysId;
//评论人网址
private int authorPortalUrl;
//评论人邮箱
private int authorEmail;
//评论人昵称
private int authorNickName;
//评论状态 0:不可用 1:可用 2:审核中
private char status;
//回复的评论id
private int replyId;
//评论的主题id
private int topicId;
//评论附件列表
private String attachmentIds;
//评论终端信息
private String terminalUserAgent;
//评论时间
private Date createTime;
//评论更新时间
private Date updateTime;
}
加载某个资源的评论列表
-
根据资源res_id 查询评论列表中,topicId 为res_id的评论,可以分页查询
-
根据查询得到的评论列表,判断当前系统设置的评论层级数目comment_depth,循环遍历,若comment_depth != 1,则拿着topicId,commentId递归查询评论表,得到每条评论的回复列表,若递归层次达到comment_depth,则停止递归,防止过多的"盖楼"
-
查询评论信息时,若某条评论的replyId不等于0,则需要关联出他回复的评论人信息
-
查询回复列表时,也应该要分页查询默认当前页1,分页大小10,前端页面要显示分页按钮进行后续的回复列表查询
mrajoe: 第一层评论
shaojiao: 第二层回复
mrajoe: 第三层回复
shaojiao:第四层回复
mrajoe:第五层回复
mrajoe: 第二层回复
shaojiao: 第一层评论
本文探讨了一种评论列表查询的设计方案,包括评论信息的数据结构及其关键字段,如评论ID、作者信息、状态、回复ID和主题ID等。重点在于如何根据资源ID查询评论,实现分页,并通过递归获取评论的回复层级,同时考虑了防止过度“盖楼”的限制。此外,还提及了如何展示评论的层级结构,例如mrajoe和shaojiao之间的多层回复交互。该设计旨在优化用户体验并有效管理评论数据。
1186

被折叠的 条评论
为什么被折叠?



