怎么知道用户连续签到?
来源:2-3 字符串、数组、集合在使用时出现空指针怎么办?
春去_秋来
2020-09-08

写回答
1回答
-
春去秋来你好:
这个功能的实现方式是多样的。最核心的出发点和思考点是:你有多大的用户量(需要预估出来),如果用户量不是很大,比如说少于 10万个,那么,MySQL 和 Redis 处理下都是非常简单的。我这里给出一个简单的使用 Redis 的方案:
将所有的用户签到信息保存到一个 Redis Hash 对象中,Hash 中的每一个 field value 记录一个用户的签到信息,显然,field 中需要有用户的 id 标识,value 需要有用户的签到记录。那么,可以是这样的数据:
{ "user_1": { "2020-09-01": true, "2020-09-02": true }, "user_2": { "2020-09-01": true, "2020-09-02": true } }那么,保存了这些数据,用代码处理下就可以了(这个逻辑就很简单了)。你当然在保存 value 的时候不使用 Map,而是使用 List 等等记录下来。不过最终肯定是将 Java 对象序列化到 Redis 中。
我是勤一,致力于将这门课程的问答区打造为 Java 知识体系知识库,Java 知识体系 BBS!共同建造、维护这门课程,我需要每一个你!
50
相似问题