springboot使用redisTemplate遇到的問題


概述

最近工作中新構建了一個項目,用的springboot,由於項目中要使用各種各樣的緩存,就使用了spring-data-redis,這個東西比我想象中要難使用的多啊,而且我還遇到個問題,就是在用Redis來計數的時候,使用redisTemplate.opsForValue().increment()后,如果你再去get這值的時候就會報錯,今天我們就來研究下,具體是為什么?

解決辦法

 1     public long getIncrValue(final String key) {
 2         
 3         return redisTemplate.execute(new RedisCallback<Long>() {
 4             @Override
 5             public Long doInRedis(RedisConnection connection) throws DataAccessException {
 6                 StringRedisSerializer serializer=(StringRedisSerializer) redisTemplate.getKeySerializer();
 7                 byte[] rowkey=serializer.serialize(key);
 8                 byte[] rowval=connection.get(rowkey);
 9                 try {
10                     String val=serializer.deserialize(rowval);
11                     return Long.parseLong(val);
12                 } catch (Exception e) {
13                     return 0L;
14                 }
15             }
16         });
17     }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM