现在我的业务需求是根据userId查询出当前用户今年的签到记录,我想一次性查出bitmap的365位数据。
百度了一小时,仅仅了解到需要用这个方法
但是对于第二个参数我不知道如何编写,看了https://docs.spring.io/spring-data/redis/docs/2.3.4.RELEASE/api/文档摸索不出如何编写。
当前看源码只摸索到这里,然而并不是我想要的结果,探究不下去了:
看下有没有你要的方法:https://segmentfault.com/a/1190000017555796?utm_source=tag-newest
这不是我想要的方法
我在一个帖子上只找到了jedis的方法,就是想要这样的效果,返回一个Long类型的集合
跟你的需求一样的啊,获取签到的信息。
我的需求是获取一段日期的签到信息,比如我现在想获取一个月的签到信息,那么redis返回的应该是List集合->[1,1,1,1,0,0,0,0....总共30个位]
你要知道具体哪一天签到了。而不是单纯的统计一个月签到了多少次。。。
对 我要获取一个段时间的签到记录,比如今年开始的1-30天,那么我就一次性读取bitmap的0-29位
那你用jedis一样可以吧。
项目已经定了redistemplate了,就是布吉岛怎么用template实现
如果不能整合jedis的话,那你可以直接获取用户签到的key吧。对key进行分析,然后统计。
设置第100天已签到
stringRedisTemplate.opsForValue().setBit(100, 工号, true);
获取第100天是否签到
Boolean isCheckIn = stringRedisTemplate.opsForValue().getBit(100, 工号);