RedisTemplate中opsForValue和opsForList方法使用

一、opsForList用法

key:字符串,value:可以是任意对象Object(例如String、具体对象如自定义类Student等),一个key可以分别先后添加多个value。

redis对list操作分为左和右两种

redisTemplate.opsForList().leftPush() 实际调用的是lPush return
connection.lPush(rawKey, new byte[][]{rawValue});
redisTemplate.opsForList().rightPush() 调用的是rPush
lPush将数据添加到key对应的现有数据的左边,也就是头部,rPush是将现有数据添加到现有数据的右边,也就是尾部,可以根据业务的不同进行对应的添加

//赋值方法
redisTemplate.opsForList().leftPush("testKey","L1");
redisTemplate.opsForList().leftPush("testKey","L2");
redisTemplate.opsForList().leftPush("testKey","L3");
redisTemplate.opsForList().rightPush("testKey","R4");
redisTemplate.opsForList().rightPush("testKey","R5");
redisTemplate.opsForList().rightPush("testKey","R6");
redisTemplate.opsForList().rightPush("testKey","R7");
   L3 L2 L1 R4 R5 R6 R7

二、opsForValue用法
key:字符串,value:可以是任意对象Object(例如String、具体对象如自定义类Student等),一个key只能对应一个value。

//赋值方法
redisTemplate.opsForValue().set("username1","李四");
redisTemplate.opsForValue().set("username2","王五");
redisTemplate.opsForValue().set("username3","赵六");
//取值,返回是String类型
String str1 = redisTemplate.opsForValue().get("username1");
String str2 = redisTemplate.opsForValue().get("username2");
String str3 = redisTemplate.opsForValue().get("username3");
//赋值方法
redisTemplate.opsForValue().set("stu1",new Student(1,"张三",20,"张无忌"));
redisTemplate.opsForValue().set("stu2",new Student(2,"李四",20,"张真人"));
//取值,返回是Student类型
Student stu1 = redisTemplate.opsForValue().get("stu1");
Student stu2 = redisTemplate.opsForValue().get("stu2");

总结:set时value传的是什么类型,get后返回的就是什么类型。

猜你喜欢

转载自blog.csdn.net/qq_42862247/article/details/118677257
今日推荐