Springboot整合redis及StringRedisTemplate的使用

springboot整个Redis

1. 安装Redis依赖

springboot封装了redis的starter,可以直接引用spring-boot-starter-data-redis

  
            org.springframework.boot
            spring-boot-starter-data-redis
  

2. 修改配置文件

设置redis的相关文件配置文件

# redis的ip地址  
spring.redis.hostName=127.0.0.1
# 数据库,默认为0
spring.redis.database=0
# 端口号  
spring.redis.port=6379
# 如果有密码  
spring.redis.password=
# 客户端超时时间单位是毫秒 默认是2000 
spring.redis.timeout=10000  

3. 验证是否配置成功

写个单元测试,简单地验证下是否配置成功

  @Autowired
    StringRedisTemplate stringRedisTemplate;

    @Test
    public void set(){
        stringRedisTemplate.opsForValue().set("testkey","test_value");
    }

执行单元测试,打开redis管理工具,可以看到,该条数据已经加入到了redis


图片.png

StringRedisTemplate相关使用

1.stringRedisTemplate中定义了5种数据结构操作


//操作字符串
stringRedisTemplate.opsForValue();

//操作hash
stringRedisTemplate.opsForHash();

//操作list
stringRedisTemplate.opsForList();

//操作set
stringRedisTemplate.opsForSet();

//操作有序set
stringRedisTemplate.opsForZSet();

2.简单地使用事例


//向redis里存入数据和设置缓存时间(5分钟)
stringRedisTemplate.opsForValue().set("key", "value",60*5, TimeUnit.SECONDS);
//val做-1操作
stringRedisTemplate.boundValueOps("key").increment(-1);
//根据key获取缓存中的val
stringRedisTemplate.opsForValue().get("key");
//val +1
stringRedisTemplate.boundValueOps("key").increment(1);
//根据key获取过期时间
stringRedisTemplate.getExpire("key");
//根据key获取过期时间并换算成指定单位
stringRedisTemplate.getExpire("key",TimeUnit.SECONDS);
//根据key删除缓存
stringRedisTemplate.delete("key");
//检查key是否存在,返回boolean值
stringRedisTemplate.hasKey("key");
//向指定key中存放set集合
stringRedisTemplate.opsForSet().add("key", "1","2","3");
//设置过期时间
stringRedisTemplate.expire("key",1000 , TimeUnit.MILLISECONDS);
//根据key查看集合中是否存在指定数据
stringRedisTemplate.opsForSet().isMember("key", "1");
//根据key获取set集合
stringRedisTemplate.opsForSet().members("key");

你可能感兴趣的:(Springboot整合redis及StringRedisTemplate的使用)