如何实现 楼中楼评论(盖楼)
理想效果:
需求分析
1. 实现用户评论功能(CRUD)--> 这里称之为父级评论
2. 能够对父级评论做出回复--> 这里称之为一级评论
3. 能够对一级评论做出回复--> 这里称之为二级评论
4. 实现评论点赞功能
思路
1. 不同的板块都有评论区,需要根据板块(sectionId)获取评论
2. 父级评论的数据包含
1. 评论id
2. 板块id
3. 作者名称
4. 作者头像
5. 点赞数
建表如下:
3. 一级评论包含
1. 评论id
2. 父级评论id
3. 评论者名称
4. 评论者头像
5. 评论内容
建表如下:
4. 二级评论
建表同上
根据sectionId查表语句
代码中最核心的是多级评论的查询语句,这里用左连接实现,返回前端后,循环加载就好了
<mapper namespace="personal.timeless.cms.mapper.CommentSayingMapper" >
<resultMap id="SayingMap" type="commentSaying" >
<id column="saying_id" property="id" jdbcType="INTEGER" />
<id column="section_id" property="sectionId" jdbcType="INTEGER" /