zoukankan      html  css  js  c++  java
  • 设计二级评论记录

    效果图:

    数据库设计

     实体类:

    @Data
    @EqualsAndHashCode(callSuper = false)
    public class Comment implements Serializable {
    
        private static final long serialVersionUID = 1L;
        private Integer commentId; //评论的ID
        private String content;
        @JsonFormat(pattern = "yyyy-MM-dd  HH:mm:ss")
        private Date createTime;
        private Integer userId;
        private Integer infoId;
        private Integer parentId;
        private String truename;
        private String replyName; //回复目标名字
        private String headImgUrl;
        private Integer replyUserId;
        private List<User> users;
        List<Comment> child; //回复或者子评论
    
    
    }

    服务层:(有参考,由于搜了好多,忘记参考哪位大神的了,抱歉!!!)

    public List<Comment> getComments(Integer infoId){
           //找到所有评论
           List<Comment> allcomments=commentMapper.getComments(infoId);
          //为空,new一个
           if(allcomments==null||allcomments.size()==0){
               return  new ArrayList<>();
           }
           List<Comment> comments=new ArrayList<>();
           List<Comment> parents=new ArrayList<>();
           //遍历评论
           for(Comment comment : allcomments){
               //是否为父评论
               if(comment.getParentId()==null){
                   comments.add(comment);
                   parents.add(comment);
               }else {
                   boolean foundParent=false;
                   //找出replyuserid对应的用户信息
                   User user=userMapper.getUserById(comment.getReplyUserId());
                   //把名字赋予
                   comment.setReplyName(user.getTruename());
    
                   for(Comment parent : parents){
                       if (comment.getParentId()==parent.getCommentId()){
                           if (parent.getChild()==null){
                               parent.setChild(new ArrayList<>());
    
                           }
                           parent.getChild().add(comment);
                           parents.add(comment);
                           foundParent=true;
                           break;
                       }
                   }
    
               }
           }
    
           return comments;
        }

    thymeleaf前端:

     

    不经一番彻骨寒,哪有梅花扑鼻香?
  • 相关阅读:
    RunLoop学习总结
    单例模式探索
    HTTPS的学习总结
    Objective-C 链式编程思想
    iOS开发之计算动态cell的高度并缓存
    iOS开发之SDWebImage详解
    HDU 1211 RSA(快速幂)
    HDU 4965 Fast Matrix Calculation (矩阵快速幂)
    POJ 3233 Matrix Power Series(矩阵快速幂+二分求和)
    POJ 3518 (筛素数)
  • 原文地址:https://www.cnblogs.com/zongyao/p/13831132.html
Copyright © 2011-2022 走看看