RedisTemplate操作bitmap,应用场景记录签到以及布隆过滤器
2023-12-15 18:29:26
package com.xx.utils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisCallback;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
/**
* @Auther: ZHANG PU
* @Date: 2023/12/12 16:54
* @Description:
*/
@Component
public class RedisUtils {
@Autowired
private RedisTemplate redisTemplate;
/**
* 功能描述: 标记
*
* @author zhang pu
* @date 16:58 2023/12/12
*/
public Boolean mark(String key, long offset, boolean tag) {
return redisTemplate.opsForValue().setBit(key, offset, tag);
}
/**
* 功能描述: 验证是否标记
*
* @author zhang pu
* @date 16:58 2023/12/12
*/
public Boolean check(String key, long offest) {
return redisTemplate.opsForValue().getBit(key, offest);
}
/**
* 功能描述: 获取标记数
*
* @author zhang pu
* @date 16:58 2023/12/12
*/
public Long getMarkCount(String key) {
Long bitCount = (Long) redisTemplate.execute((RedisCallback) cbk -> cbk.bitCount(key.getBytes()));
return bitCount;
}
}
文章来源:https://blog.csdn.net/weixin_42456784/article/details/134954155
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!