使用StringRedisTemplate和RedisTemplate
生活随笔
收集整理的這篇文章主要介紹了
使用StringRedisTemplate和RedisTemplate
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
@Autowiredprivate StringRedisTemplate stringRedisTemplate; //對(duì)字符串支持比較友好,不能存儲(chǔ)對(duì)象@Autowiredprivate RedisTemplate redisTemplate; //存儲(chǔ)對(duì)象@Testpublic void testRedisTemplate(){System.out.println(redisTemplate);//設(shè)置redistemplate值使用對(duì)象序列化策略redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());//指定值使用對(duì)象序列化//redisTemplate.opsForValue().set("user",new User("21","小黑",23,new Date()));User user = (User) redisTemplate.opsForValue().get("user");System.out.println(user);
// Set keys = redisTemplate.keys("*");
// keys.forEach(key -> System.out.println(key));/*Object name = redisTemplate.opsForValue().get("name");System.out.println(name);*///Object xiaohei = redisTemplate.opsForValue().get("xiaohei");//System.out.println(xiaohei);/*redisTemplate.opsForValue().set("name","xxxx");Object name = redisTemplate.opsForValue().get("name");System.out.println(name);*//*redisTemplate.opsForList().leftPushAll("lists","xxxx","1111");List lists = redisTemplate.opsForList().range("lists", 0, -1);lists.forEach(list-> System.out.println(list));*/}//key的綁定操作 如果日后對(duì)某一個(gè)key的操作及其頻繁,可以將這個(gè)key綁定到對(duì)應(yīng)redistemplate中,日后基于綁定操作都是操作這個(gè)key//boundValueOps 用來(lái)對(duì)String值綁定key//boundListOps 用來(lái)對(duì)List值綁定key//boundSetOps 用來(lái)對(duì)Set值綁定key//boundZsetOps 用來(lái)對(duì)Zset值綁定key//boundHashOps 用來(lái)對(duì)Hash值綁定key@Testpublic void testBoundKey(){BoundValueOperations<String, String> nameValueOperations = stringRedisTemplate.boundValueOps("name");nameValueOperations.set("1");//yuewnameValueOperations.set("2");String s = nameValueOperations.get();System.out.println(s);}//hash相關(guān)操作 opsForHash@Testpublic void testHash(){stringRedisTemplate.opsForHash().put("maps","name","小黑");Object o = stringRedisTemplate.opsForHash().get("maps", "name");System.out.println(o);}//zset相關(guān)操作 opsForZSet@Testpublic void testZSet(){stringRedisTemplate.opsForZSet().add("zsets","小黑",10);Set<String> zsets = stringRedisTemplate.opsForZSet().range("zsets", 0, -1);zsets.forEach(value-> System.out.println(value));}//set相關(guān)操作 opsForSet@Testpublic void testSet(){stringRedisTemplate.opsForSet().add("sets","xiaosan","xiaosi","xiaowu");Set<String> sets = stringRedisTemplate.opsForSet().members("sets");sets.forEach(value-> System.out.println(value));}//list相關(guān)的操作opsForList@Testpublic void testList(){// stringRedisTemplate.opsForList().leftPushAll("lists","張三","李四","王五");List<String> lists = stringRedisTemplate.opsForList().range("lists", 0, -1);lists.forEach(key -> System.out.println(key));}//String相關(guān)的操作 opsForValue@Testpublic void testString(){//stringRedisTemplate.opsForValue().set("166","好同學(xué)");String s = stringRedisTemplate.opsForValue().get("166");System.out.println(s);Long size = stringRedisTemplate.opsForValue().size("166");System.out.println(size);}//key相關(guān)的操作@Testpublic void test(){Set<String> keys = stringRedisTemplate.keys("*");//查看所有keyBoolean name = stringRedisTemplate.hasKey("name");//判斷某個(gè)key是否存在stringRedisTemplate.delete("age");//根據(jù)指定key刪除stringRedisTemplate.rename("","");//修改key的名稱stringRedisTemplate.expire("key",10, TimeUnit.HOURS);//設(shè)置key超時(shí)時(shí)間 參數(shù)1:設(shè)置key名 參數(shù)2:時(shí)間 參數(shù)3:時(shí)間的單位stringRedisTemplate.move("",1);//移動(dòng)key
總結(jié)
以上是生活随笔為你收集整理的使用StringRedisTemplate和RedisTemplate的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Redis操作Hash相关API
- 下一篇: Redis查看集群状态