本文共 7344 字,大约阅读时间需要 24 分钟。
public class Comment { private int id; private int userId; private int entityType; private int entityId; private int targetId; private String content; private int status; private Date createTime; public int getId() { return id; } public void setId(int id) { this.id = id; } public int getUserId() { return userId; } public void setUserId(int userId) { this.userId = userId; } public int getEntityType() { return entityType; } public void setEntityType(int entityType) { this.entityType = entityType; } public int getEntityId() { return entityId; } public void setEntityId(int entityId) { this.entityId = entityId; } public int getTargetId() { return targetId; } public void setTargetId(int targetId) { this.targetId = targetId; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this.createTime = createTime; } @Override public String toString() { return "Comment{" + "id=" + id + ", userId=" + userId + ", entityType=" + entityType + ", entityId=" + entityId + ", targetId=" + targetId + ", content='" + content + '\'' + ", status=" + status + ", createTime=" + createTime + '}'; }}
CommentMapper接口
@Mapperpublic interface CommentMapper { ListselectCommentsByEntity(int entityType, int entityId, int offset, int limit); int selectCountByEntity(int entityType, int entityId);}
comment-mapper.xml
id, user_id, entity_type, entity_id, target_id, content, status, create_time
@Servicepublic class CommentService { @Autowired private CommentMapper commentMapper; public ListfindCommentsByEntity(int entityType, int entityId, int offset, int limit){ return commentMapper.selectCommentsByEntity(entityType, entityId, offset, limit); } public int findCommentCount(int entityType, int entityId){ return commentMapper.selectCountByEntity(entityType, entityId); }}
DiscussPostController
帖子详情页,有评论,评论中有回复 注入page, post,user,comments@RequestMapping(path = "/detail/{discussPostId}", method = RequestMethod.GET) public String getDiscussPost(@PathVariable("discussPostId") int discussPostId, Model model, Page page) { // 帖子 DiscussPost post = discussPostService.findDiscussPostById(discussPostId); model.addAttribute("post", post); // 作者 User user = userService.findUserById(post.getUserId()); model.addAttribute("user", user); // 评论分页信息 page.setLimit(5); page.setPath("/discuss/detail/" + discussPostId); page.setRows(post.getCommentCount()); // 评论列表 ListcommentList = commentService.findCommentsByEntity( ENTITY_TYPE_POST, post.getId(), page.getOffset(), page.getLimit()); // 评论显示vo列表 List
discuss-detail.html
备战春招,面试刷题跟他复习,一个月全搞定!
金三银四的金三已经到了,你还沉浸在过年的喜悦中吗? 如果是,那我要让你清醒一下了:目前大部分公司已经开启了内推,正式网申也将在3月份陆续开始,金三银四,春招的求职黄金时期已经来啦!!! 再不准备,作为19应届生的你可能就找不到工作了。。。作为20届实习生的你可能就找不到实习了。。。 现阶段时间紧,任务重,能做到短时间内快速提升的也就只有算法了, 那么算法要怎么复习?重点在哪里?常见笔试面试算法题型和解题思路以及最优代码是怎样的? 跟左程云老师学算法,不仅能解决以上所有问题,还能在短时间内得到最大程度的提升!!!
src= 网址
utext= 会解析html
text=each= 遍历
th:each="cvo:${comments}"th:each="rvo:${cvo.replys}"
if= 条件
th:if="${rvo.target==null}"th:if="${rvo.target!=null}"
href= 引用
id=th:href="|#huifu-${rvoStat.count}|"th:id="|huifu-${rvoStat.count}|"
th:utext="${post.title}"th:src="${user.headerUrl}"th:utext="${user.username}"th:text="${#dates.format(post.createTime,'yyyy-MM-dd HH:mm:ss')}"th:text="${post.commentCount}"th:utext="${post.content}"th:each="cvo:${comments}"th:src="${cvo.user.headerUrl}"th:utext="cvo.user.username"th:text="${page.offset + cvoStat.count}"th:utext="${cvo.comment.content}"th:text="${#dates.format(cvo.comment.createTime,'yyyy-MM-dd HH:mm:ss')}"th:text="${cvo.replyCount}"th:each="rvo:${cvo.replys}"th:if="${rvo.target==null}"th:utext="${rvo.user.username}"th:utext="${rvo.target.username}"th:utext="${rvo.reply.content}"th:text="${#dates.format(rvo.reply.createTime,'yyyy-MM-dd HH:mm:ss')}"th:href="|#huifu-${rvoStat.count}|"th:id="|huifu-${rvoStat.count}|"
转载地址:http://isnlf.baihongyu.com/