關于redis存放value前面多出‘\x00’的問題

項目工程配置使用fastjson實現(xiàn)redis數(shù)據(jù)讀寫后的序列化及反序列化,開發(fā)過程提示fastjson序列化redis數(shù)據(jù)異常,提示不符合json格式,使用redis-cli檢索redis數(shù)據(jù)發(fā)現(xiàn)json字符串前面多了很多‘/x00’,如下圖:



從截圖可以看出確實不符合json格式,經(jīng)檢查其他數(shù)據(jù)并沒有這種情況,初步定位是寫數(shù)據(jù)問題,
發(fā)現(xiàn)寫數(shù)據(jù)用了如下API:

this.redisTemplate.opsForValue().set(key, value, ttl);

其他正常寫數(shù)據(jù)的使用的是如下API:

this.redisTemplate.opsForValue().set(key, value, ttl, TimeUnit.SECONDS);

可以發(fā)現(xiàn)導致數(shù)據(jù)不符合json格式的原因是在api里面沒有指定有效期單位。加上單位后復測發(fā)現(xiàn)數(shù)據(jù)能夠正常解析,為什么不指定時間單位會出現(xiàn)這個問題呢?暫時留個疑問。。。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 1、JAVA的跨平臺原理 JVA源碼被編譯會生成字節(jié)碼文件,通過不同平臺上下載的不同版本的JVM,將字節(jié)碼文件翻譯...
    手術刀呀閱讀 238評論 0 0
  • 問:Sql 注入無回顯的情況下,利用 DNSlog,mysql 下利用什么構(gòu)造代碼,mssql 下又如何? 答: ...
    唐小風7閱讀 837評論 0 2
  • 基礎篇 1.ES為什么查詢效率快 傳統(tǒng)的數(shù)據(jù)庫采用的B+數(shù)索引,ES中為所有字段默認都建了倒排索引 2.設計模式 ...
    磨陀貨_閱讀 1,162評論 0 2
  • 關于Mongodb的全面總結(jié) MongoDB的內(nèi)部構(gòu)造《MongoDB The Definitive Guide》...
    中v中閱讀 32,284評論 2 89
  • 在網(wǎng)上看到一篇專門匯總面試題的文章,于是一時興起,就把其內(nèi)容整理了一番,因為原文問題和答案不完整,且混在一起,于是...
    帥可兒妞閱讀 943評論 0 1

友情鏈接更多精彩內(nèi)容