点赞,评论,收藏功能的实现思路
18.1 掌握文章管理
18.1.1 评论功能
18.1.1.1 掌握评论表设计
18.1.1.2 掌握评论数量+1
实现思路: 每当有用户评论,使用ajax添加一条数据到评论表,入库成功之后,在redis中把缓存的评论数自增1,并把值返回给前端页面进行展示
18.1.2 点赞功能
18.1.2.1 掌握点赞表设计
18.1.2.2 掌握点赞数量+1,以及前端无刷新效果
实现思路: 用户点击点赞按钮,使用ajax添加一条数据到点赞表,入库成功之后,在redis中把缓存的点赞数自增1,为防止一个用户短时间内多次点赞,在入库之前先根据当前用户id查询一下redis中是否缓存有用户的信息,如果有则直接返回,如果没有则添加数据库,并把用户信息记录下来,过期时间随具体需求设置,操作完成后把值返回给前端页面进行展示
18.1.3 回复功能
18.1.3.1 掌握回复表设计
18.1.3.2 掌握评论回复之间的关联关系
由于我们拆分了评论和回复,那么评论表就不再需要目标用户字段了,因为评论均是用户对文章的评论,评论表的设计更佳简洁了。
回复表添加了一个comment_id字段来表示该回复挂在的评论id,这样设计也是出于性能方面的考虑,我们可以直接通过评论id一次性的找出该评论下的所有回复,然后通过程序来编排回复的显示结构。 通过适当的冗余来提高性能也是常用的优化手段之一。
18.1.4 收藏功能 18.1.4.1 掌握收藏表设计
18.1.4.2 掌握收藏数量+1
实现思路: 用户点击收藏,使用ajax调用收藏接口,使用redis的set去存储用户收藏文章的信息,如果存储成功,则把数据添加到数据库,反之则把数据从redis中清除掉,并把数据库中的数据也清楚点,同时修改收藏的数量
18.1.4.3 掌握我的收藏记录 18.1.5 排行榜 18.1.5.1 掌握通过MySQL实现排行榜 18.1.5.2 掌握使用Redis实现排行榜
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!