我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何在Springboot中使用RedisUtils工具类

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何在Springboot中使用RedisUtils工具类

如何在Springboot中使用RedisUtils工具类?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

SpringBoot整合Redis

引入Redis依赖

 <!-- redis--><dependency>     <groupId>org.springframework.boot</groupId>     <artifactId>spring-boot-starter-data-redis</artifactId></dependency>

设置Redis的Template

如何在Springboot中使用RedisUtils工具类

RedisConfig.java

package cn.wideth.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.connection.RedisConnectionFactory;import org.springframework.data.redis.core.RedisTemplate;import org.springframework.data.redis.serializer.RedisSerializer;@Configurationpublic class RedisConfig {    @Bean    public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {        RedisTemplate<String, Object> template = new RedisTemplate<>();        template.setConnectionFactory(factory);        // 设置key的序列化方式        template.setKeySerializer(RedisSerializer.string());        // 设置value的序列化方式        template.setValueSerializer(RedisSerializer.json());        // 设置hash的key的序列化方式        template.setHashKeySerializer(RedisSerializer.string());        // 设置hash的value的序列化方式        template.setHashValueSerializer(RedisSerializer.json());        template.afterPropertiesSet();        return template;    }}

设置Redis连接信息

如何在Springboot中使用RedisUtils工具类

redis操作5种常见的数据类型

Redis工具类

redisTemplate API

opsForValue -> String

opsForSet -> Set

opsForHash -> hash

opsForZset -> SortSet

opsForList -> list队列

代码

package cn.wideth.util.other;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.*;import java.util.List;import java.util.Set;import java.util.concurrent.TimeUnit;public class RedisUtils {    @Autowired    private RedisTemplate<String, Object> redisTemplate;    private static double size = Math.pow(2, 32);        public boolean setBit(String key, long offset, boolean isShow) {        boolean result = false;        try {            ValueOperations<String, Object> operations = redisTemplate.opsForValue();            operations.setBit(key, offset, isShow);            result = true;        } catch (Exception e) {            e.printStackTrace();        }        return result;    }        public boolean getBit(String key, long offset) {        boolean result = false;        try {            ValueOperations<String, Object> operations = redisTemplate.opsForValue();            result = operations.getBit(key, offset);        } catch (Exception e) {            e.printStackTrace();        }        return result;    }        public boolean set(final String key, Object value) {        boolean result = false;        try {            ValueOperations<String, Object> operations = redisTemplate.opsForValue();            operations.set(key, value);            result = true;        } catch (Exception e) {            e.printStackTrace();        }        return result;    }            public boolean set(final String key, Object value, Long expireTime) {        boolean result = false;        try {            ValueOperations<String, Object> operations = redisTemplate.opsForValue();            operations.set(key, value);            redisTemplate.expire(key, expireTime, TimeUnit.SECONDS);            result = true;        } catch (Exception e) {            e.printStackTrace();        }        return result;    }        public void remove(final String... keys) {        for (String key : keys) {            remove(key);        }    }        public void remove(final String key) {        if (exists(key)) {            redisTemplate.delete(key);        }    }        public boolean exists(final String key) {        return redisTemplate.hasKey(key);    }        public Object get(final String key) {        Object result = null;        ValueOperations<String, Object> operations = redisTemplate.opsForValue();        result = operations.get(key);        return result;    }        public void hmSet(String key, Object hashKey, Object value) {        HashOperations<String, Object, Object> hash = redisTemplate.opsForHash();        hash.put(key, hashKey, value);    }        public Object hmGet(String key, Object hashKey) {        HashOperations<String, Object, Object> hash = redisTemplate.opsForHash();        return hash.get(key, hashKey);    }        public void lPush(String k, Object v) {        ListOperations<String, Object> list = redisTemplate.opsForList();        list.rightPush(k, v);    }        public List<Object> lRange(String k, long l, long l1) {        ListOperations<String, Object> list = redisTemplate.opsForList();        return list.range(k, l, l1);    }        public void add(String key, Object value) {        SetOperations<String, Object> set = redisTemplate.opsForSet();        set.add(key, value);    }        public Set<Object> setMembers(String key) {        SetOperations<String, Object> set = redisTemplate.opsForSet();        return set.members(key);    }        public void zAdd(String key, Object value, double scoure) {        ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();        zset.add(key, value, scoure);    }        public Set<Object> rangeByScore(String key, double scoure, double scoure1) {        ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();        redisTemplate.opsForValue();        return zset.rangeByScore(key, scoure, scoure1);    }    //第一次加载的时候将数据加载到redis中    public void saveDataToRedis(String name) {        double index = Math.abs(name.hashCode() % size);        long indexLong = new Double(index).longValue();        boolean availableUsers = setBit("availableUsers", indexLong, true);    }    //第一次加载的时候将数据加载到redis中    public boolean getDataToRedis(String name) {        double index = Math.abs(name.hashCode() % size);        long indexLong = new Double(index).longValue();        return getBit("availableUsers", indexLong);    }        public Long zRank(String key, Object value) {        ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();        return zset.rank(key,value);    }        public Set<ZSetOperations.TypedTuple<Object>> zRankWithScore(String key, long start,long end) {        ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();        Set<ZSetOperations.TypedTuple<Object>> ret = zset.rangeWithScores(key,start,end);        return ret;    }        public Double zSetScore(String key, Object value) {        ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();        return zset.score(key,value);    }        public void incrementScore(String key, Object value, double scoure) {        ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();        zset.incrementScore(key, value, scoure);    }        public Set<ZSetOperations.TypedTuple<Object>> reverseZRankWithScore(String key, long start,long end) {        ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();        Set<ZSetOperations.TypedTuple<Object>> ret = zset.reverseRangeByScoreWithScores(key,start,end);        return ret;    }        public Set<ZSetOperations.TypedTuple<Object>> reverseZRankWithRank(String key, long start, long end) {        ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();        Set<ZSetOperations.TypedTuple<Object>> ret = zset.reverseRangeWithScores(key, start, end);        return ret;    }    }

springboot是什么

springboot一种全新的编程规范,其设计目的是用来简化新Spring应用的初始搭建以及开发过程,SpringBoot也是一个服务于框架的框架,服务范围是简化配置文件。

关于如何在Springboot中使用RedisUtils工具类问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网行业资讯频道了解更多相关知识。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何在Springboot中使用RedisUtils工具类

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何在Springboot中使用RedisUtils工具类

如何在Springboot中使用RedisUtils工具类?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。SpringBoot整合Redis引入Redis依赖