SpringBoot中 整合 redisTemplate 對 Redis 的操作(二)
阿新 • • 發佈:2019-08-26
SpringBoot中 整合 redisTemplate 對 Redis 的操作(二)
List 型別的操作
1、 向列表左側新增資料
Long leftPush = redisTemplate.opsForList().leftPush("name", name);
2、 向列表右側新增資料
Long rightPush = redisTemplate.opsForList().rightPush("name", name);
3、 向列表左側批量新增資料
ArrayList<Object> list = new ArrayList<>(); list.add("shanghai"); list.add("shenzhen"); list.add("beijing"); redisTemplate.opsForList().leftPushAll("address", list);
4、 查詢列表中指定索引的值
Object name = redisTemplate.opsForList().index("name", index);
5、 查詢列表指定範圍內的值
List range = redisTemplate.opsForList().range(key, sIndex, eIndex);
6、 修改列表中 指定索引的值
redisTemplate.opsForList().set(key, index, object);
7、 擷取列表中指定範圍內的值
redisTemplate.opsForList().trim(key, sIndex, eIndex);
8、 移除列表中指定索引和指定值
Long remove = redisTemplate.opsForList().remove(key, index, object);
9、 彈出列表左側的值
Object o = redisTemplate.opsForList().leftPop(key);
10、 彈出列表右側的值
Object o = redisTemplate.opsForList().rightPop(key, time, TimeUnit.MILLISECONDS);
11、彈出指定列表右側的值,並把值新增到另一指定列表的左側
Object o = redisTemplate.opsForList().rightPopAndLeftPush(key1, key2, time, TimeUnit.SECONDS);
Hash 型別的操作
在操作hash 資料型別前,同樣我們自定義下 序列化規則
//定義Hash key 序列化 方式
redisTemplate.setHashKeySerializer(new StringRedisSerializer());
//定義Hash value 序列化方式
redisTemplate.setHashValueSerializer(new GenericJackson2JsonRedisSerializer());
1、 新增 key-value
redisTemplate.opsForHash().put(key,hkey,hvalue);
2、 批量新增key-value
HashMap<Object, Object> map = new HashMap<>();
map.put("num", 2);
map.put("name", "susu");
map.put("age", 18);
redisTemplate.opsForHash().putAll(key, map);
3、 獲取 指定物件所有的 hash 值
Map entries = redisTemplate.opsForHash().entries(key);
4、 獲取指定物件的所有key
Set keys = redisTemplate.opsForHash().keys(key);
5、 獲取指定物件的所有value
List values = redisTemplate.opsForHash().values(key);
6、 獲取指定物件的指定 key 的 value
Object o = redisTemplate.opsForHash().get(key, hkey);
7、 根據指定物件的key 刪除value值
Long delete = redisTemplate.opsForHash().delete(key, hkey);
8、 獲取指定物件的特定key 對應的value 的長度
Long lengthOfValue = redisTemplate.opsForHash().lengthOfValue(