码迷,mamicode.com
首页 > 其他好文 > 详细

模仿segmentfault 评论

时间:2018-05-11 20:41:49      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:循环   highlight   用户id   java   方式   SQ   查询   utf8   mail   

实现核心功能,包括数据库设计,java代码编写。

使用 @用户 评论方法,避免了多重循环嵌套方式。

微博、思否就是用这种评论方式。

效果图:

微博(评论时间倒叙,从下向上看):

技术分享图片

思否

技术分享图片

数据库设计:

涉及到三张表:

评论表 ↓

技术分享图片

CREATE TABLE `pm_comment` (
  `id` varchar(30) NOT NULL,
  `pid` varchar(30) DEFAULT NULL,
  `pictureid` varchar(30) DEFAULT NULL,
  `userid` varchar(32) DEFAULT NULL COMMENT ‘评论用户id‘,
  `beicommentuserid` varchar(32) DEFAULT NULL COMMENT ‘被评论用户id,如果添加根节点评论,则为空‘,
  `commenttime` datetime DEFAULT NULL,
  `isrelease` int(11) DEFAULT ‘1‘,
  `isdel` int(11) DEFAULT ‘0‘,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

评论内容表 ↓

技术分享图片

CREATE TABLE `pm_commentcontent` (
  `id` varchar(32) NOT NULL DEFAULT ‘‘,
  `commentid` varchar(30) NOT NULL,
  `commentcontent` varchar(500) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

用户表 ↓

技术分享图片

CREATE TABLE `pm_user` (
  `id` varchar(30) NOT NULL,
  `account` varchar(20) NOT NULL,
  `password` varchar(40) NOT NULL,
  `nickname` varchar(20) DEFAULT NULL,
  `avatar` varchar(200) DEFAULT NULL,
  `gender` varchar(10) NOT NULL,
  `phonenumber` varchar(11) NOT NULL,
  `email` varchar(50) NOT NULL,
  `createtime` datetime NOT NULL,
  `updatetime` datetime DEFAULT NULL,
  `isdel` int(11) NOT NULL DEFAULT ‘0‘,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

 

关联查询出评论记录:

SELECT
	pc.id,
	pc.pid,
	pc.pictureid,
	pc.userid,
	pu.account AS username,
	pc.beicommentuserid,
	pus.account AS beicommentusername,
	pc.commenttime,
	pc.isrelease,
	pc.isdel,
	pcc.commentcontent AS commentcontent
FROM
	pm_comment AS pc
INNER JOIN pm_commentcontent AS pcc ON pc.id = pcc.commentid
INNER JOIN pm_user AS pu ON pc.userid = pu.id
LEFT JOIN pm_user AS pus ON pc.beicommentuserid = pus.id
WHERE
	pc.pictureid = ‘176476335496474624‘
-- AND pc.pid = ‘0‘
ORDER BY
	pc.commenttime DESC

查询结果 ↓

技术分享图片

 

模仿segmentfault 评论

标签:循环   highlight   用户id   java   方式   SQ   查询   utf8   mail   

原文地址:https://www.cnblogs.com/KTblog/p/9025838.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!