redistemplate 批量读取_redis常用操作(管道(pipeline)实现批量操作,Redis模糊匹配等)...

试了很多种错误的方法,现将自己测试成功redis管道pipeline批量操作的方法和redis常用操作以及一些关于springboot+redis的概念分享给大家

开发环境准备:

spring boot 2.x

使用RedisTemplate 操作

springboot项目pom引入redis依赖:

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-starter-redis

1.4.7.RELEASE

Jedis是Redis官方推荐的面向Java的操作Redis的客户端,而RedisTemplate是SpringDataRedis中对JedisApi的高度封装。

SpringDataRedis相对于Jedis来说可以方便地更换Redis的Java客户端,比Jedis多了自动管理连接池的特性,方便与其他Spring框架进行搭配使用.

redisTemplate

1. redisTemplate

redisTemplate默认使用的是JDK序列化,但是可以主动设置

redisTemplate执行两条命令其实是在两个连接里完成的,因为redisTemplate执行完一个命令就会对其关闭,但是redisTemplate额外为什么提供了RedisCallback和SessionCallBack两个接口

StringRedisTemplate

StringRedisTemplate继承RedisTemplate,只是提供字符串的操作,复杂的Java对象还要自行处理

RedisCallback和SessionCallBack:

作用: 让RedisTemplate进行回调,通过他们可以在同一条连接中执行多个redis命令

SessionCalback提供了良好的封装,优先使用它,redisCallback使用起来有点复杂(很多工作需要我们自己来完成)还是优先选择SessionCalback

redis 基础操作

redisTemplate模糊匹配删除

String key = "userRole:*";

redisTemplate.delete(key);

Redis模糊查询

可以通过Redis中keys命令进行获取key值,具体命令格式:keys pattern

文中提到redis中允许模糊查询的有3个通配符,分别是:*,?,[]

其中:

*:通配任意多个字符

?:通配单个字符

[]:通配括号内的某一个字符

使用通配符拿到keys

Set keysUserRole = redisTemplate.keys("userRole:"

你可能感兴趣的:(redistemplate,批量读取)