Java充电宝模型设计_继续探讨点赞功能模块设计

继续探讨点赞功能模块设计

3626bf5d53361df3c89b2843503d8e04.png

前几天我们设计了点赞模块的模块,大致思路就是:

用户点赞,首先缓存到redis中进行保存,redis中既要保存点赞总数,还要保存点赞记录。然后定时执行redis数据到数据库中。

但是,今天在资讯类项目的时候,遇到了一个问题。那就是用户点赞完之后,用户重新刷新界面,那这个界面点赞按钮应该高亮才可以。怎么实现?

方案设计

5f8aee1a6f9198547b69f414c1f5132c.png

我们要保留住用户点赞行为,也要保留住该用户对某个文章进行了点赞。如果这个用户已经对这个文章点赞过,那再进入这个界面的时候,应该点赞高亮才对。所以,我们在用户点赞完成之后,需要把对这个文章的点赞记录到redis中。然后,用户点击文章详情的时候,首先从redis中进行获取,如果有就高亮,如果没有,就查询数据库点赞记录。当然,我们需要给这个文章的这个点赞状态进行过期时间限制。

key: authorId : articleId value: 1or 0

这样的话,用户在点击文章详情的话,我们可以从redis中过滤出来,这个用户有没有对这个文章进行点赞过。如果为1说明点赞,高亮。如果为0说明没有点赞。

今天就对昨天的点赞功能遗漏的问题进行了探讨,如果大家还有什么问题,可以留言分享。

以上内容皆为本人观点,欢迎大家提出批评和指导,我们一起探讨!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/471953.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 1957. 删除字符使字符串变好

文章目录1. 题目2. 解题1. 题目 一个字符串如果没有 三个连续 相同字符,那么它就是一个 好字符串 。 给你一个字符串 s ,请你从 s 删除 最少 的字符,使它变成一个 好字符串 。 请你返回删除后的字符串。题目数据保证答案总是 唯一的 。 示…

广度优先遍历_LeetCode | 广度优先遍历

阅读本文大约需要 4 分钟概述前言429 N 叉树的层次遍历 90.36%102 二叉树的层次遍历 99.76%后记前言不管经济多不好,提高自身硬实力才是关键。本文由一个骚包程序猿zone7撰写,欢迎关注。429 N 叉树的层次遍历 90.36%给定一个 N 叉树,返回其节…

LeetCode 1958. 检查操作是否合法(模拟)

文章目录1. 题目2. 解题1. 题目 给你一个下标从 0 开始的 8 x 8 网格 board ,其中 board[r][c] 表示游戏棋盘上的格子 (r, c) 。 棋盘上空格用 . 表示,白色格子用 W 表示,黑色格子用 B 表示。 游戏中每次操作步骤为:选择一个空格…

php获取周几,php怎么获得星期几

php怎么获得星期几2021-03-07 15:06:02php获得星期几的方法:首先创建一个PHP示例文件;然后定义一个数组;最后通过“echo "星期".$weekarray[date("w")];”方式获得星期几即可。本文操作环境:Windows7系统、PH…

电脑假死卡的动不了_最近遇到奇怪电脑问题(实战篇)

点击蓝字关注我们话不多扯,说事最近遇到奇怪电脑问题装的是7系统32位开机可以进入系统插着网线开机,就假死拔掉网线开机,正常,然后插上网线依旧正常再带着网线关机,开机后又成假死假死后拔下网线依旧恢复不了必须是不插…

LeetCode 1961. 检查字符串是否为数组前缀

文章目录1. 题目2. 解题1. 题目 给你一个字符串 s 和一个字符串数组 words ,请你判断 s 是否为 words 的 前缀字符串 。 字符串 s 要成为 words 的 前缀字符串 ,需要满足:s 可以由 words 中的前 k(k 为 正数 )个字符…

ios UIScrollView 基础属性

转 UIScrollView 原理 在滚动过程当中,其实是在修改原点坐标。当手指触摸后, scroll view会暂时拦截触摸事件,使用一个计时器。假如在计时器到点后没有发生手指移动事件,那么 scroll view 发送 tracking events 到被点击的 subview。假如在计时器到点前发…

LeetCode 1962. 移除石子使总数最小(优先队列)

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 piles ,数组 下标从 0 开始 ,其中 piles[i] 表示第 i 堆石子中的石子数量。 另给你一个整数 k ,请你执行下述操作 恰好 k 次: 选出任一石子堆 piles[i] ,并从中 移除…

ubuntu自定义安装里怎么选_中央空调到底应该怎么选?小户型也能安装中央空调?行家说实话了...

▲ 点击蓝字“建通舒适家”,你想知道的空调问题,答案全在这里啦!中央空调到底应该怎么选?小户型也能安装中央空调?行家说实话了现在业主装修大多都是对中央控空调一知半解,出现很多种的情况就是&#xff1a…

三角形css_纯 CSS 实现绘制各种三角形(各种角度)

一、前言三角形实现原理:宽度width为0;height为0;(1)有一条横竖边(上下左右)的设置为border-方向:长度 solid red,这个画的就是底部的直线。其他边使用border-方向&#…

LeetCode 1826. 有缺陷的传感器(枚举)

文章目录1. 题目2. 解题1. 题目 实验室里正在进行一项实验。为了确保数据的准确性,同时使用 两个 传感器来采集数据。 您将获得2个数组 sensor1 and sensor2,其中 sensor1[i] 和 sensor2[i] 分别是两个传感器对第 i 个数据点采集到的数据。 但是&#…

今天携程出事了:让我们来学习下http的响应码

就在今天,2015年5月28日,中国最大的旅游机票预订网站--携程网粗大事了。据传携程网的数据库被人物理删除了,而容灾备份的数据又无法正常使用,服务器全面遭受瘫痪。每小时给携程带来的损失约100万美元。巴拉巴拉,作为中…

LeetCode 1708. 长度为 K 的最大子数组

文章目录1. 题目2. 解题1. 题目 在数组 A 和数组 B 中,对于第一个满足 A[i] ! B[i] 的索引 i ,当 A[i] > B[i] 时,数组 A 大于数组 B。 例如,对于索引从 0 开始的数组: [1,3,2,4] > [1,2,2,4] ,因…

LeetCode 1554. 只有一个不同字符的字符串(枚举)

文章目录1. 题目2. 解题1. 题目 给定一个字符串列表 dict ,其中所有字符串的长度都相同。 当存在两个字符串在相同索引处只有一个字符不同时,返回 True ,否则返回 False 。 进阶:你可以以 O(n*m) 的复杂度解决问题吗&#xff1…

slice 转byte go_一文告诉你神奇的Go内建函数源码在哪里

Go内建函数源码,我好像在哪里见过你。 - 佚名1. 何为Go内建函数众所周知,Go是最简单的主流编程语言之一,截至Go 1.15版本,Go语言的关键字的规模依旧保持在25个:很多刚入门的gopher可能会问:像bool、byte、e…

LeetCode 1586. 二叉搜索树迭代器 II(数组+栈)

文章目录1. 题目2. 解题1. 题目 实现二叉搜索树(BST)的中序遍历迭代器 BSTIterator 类: BSTIterator(TreeNode root) 初始化 BSTIterator 类的实例。 二叉搜索树的根节点 root 作为构造函数的参数传入。 内部指针使用一个不存在于树中且小于…

LeetCode 1570. 两个稀疏向量的点积(哈希)

文章目录1. 题目2. 解题1. 题目 给定两个稀疏向量,计算它们的点积(数量积)。 实现类 SparseVector: SparseVector(nums) 以向量 nums 初始化对象。dotProduct(vec) 计算此向量与 vec 的点积。 稀疏向量 是指绝大多数分量为 0 …

LeetCode 1644. 二叉树的最近公共祖先 II

文章目录1. 题目2. 解题1. 题目 给定一棵二叉树的根节点 root,返回给定节点 p 和 q 的最近公共祖先(LCA)节点。 如果 p 或 q 之一不存在于该二叉树中,返回 null。 树中的每个节点值都是互不相同的。 根据维基百科中对最近公共祖…

这就是搜索引擎--读书笔记五--索引的建立与更新

索引的建立和更新 索引的建立 前一总结里说到,如果索引结构建立好了,可以提高搜索的速度,那么给定一个文档集合,索引是如何建立起来的呢?建立索引的方式有很多种,在这里我就书中提到的三种方法简单总结一下…

LeetCode 1650. 二叉树的最近公共祖先 III(哈希)

文章目录1. 题目2. 解题1. 题目 给定一棵二叉树中的两个节点 p 和 q,返回它们的最近公共祖先节点(LCA)。 每个节点都包含其父节点的引用(指针)。Node 的定义如下: class Node {public int val;public No…