redis和session共享牽扯到了序列化器,所以找了找資料redis快取用到了序列化,如果是存string就不需要用到序列化,但是如果需要存bean物件和集合物件,就必須要轉序列化,這說幾種
jdkserializationredisserializer:這個是spring-data-redis預設的序列化方式,如果不指定序列化方式,那麼將用這個,物件存在redis會是二進位制形式,而且很長,在redis視覺化看到的也是一堆看不懂的東西,只能在操作者反序列化後才能看到真實的內容
好處:對於bean之類的只需要讓它實現serializable介面就行,反序列化只需要強轉就好
對於集合就需要自己有個serializeutil(redis序列化工具)序列化把集合轉成byte陣列再儲存,反序列化把byte轉 成object再強轉成指定的物件
壞處:顯而易見,無法在快取中知道儲存資料的型別和值,而且還很長,對於redis來說,短會更好
jackson2jsonredisserializer還沒用到,先放這
genericjackson2jsonredisserializer參考
Redis例項 序列化和反序列化
由於每個字串型別鍵只能儲存乙個字串,而一篇部落格文章是由標題 正文 作者與發布時間等多個元素構成的。為了儲存這些元素,我們需要使用序列化函式 如serialize 將它們轉換成乙個字串。除此之外,因為字串型別鍵可以儲存二進位制資料,所以也可以使用messagepack進行序列化,它的速度更好,占用空...
mysql序列化自增 redis 自動序列化的坑
最近專案裡需要用redis來存一下物件 陣列。然後一如既往的按照 redis set key,object 結果發現存不進去。然後讓同事試了一下,沒想到他那邊竟然可以存。當時就糾結了,reids版本 配置啥的都一樣啊,怎麼他的能直接存,我的就一直不行。經過一番折騰後,突然發現這麼一篇文章 redis...
序列化(序列化)
原書上翻譯為序列化,msdn翻譯為序列化 作用 當需要儲存,或者網路傳輸 remoting時,資料 物件或值 需要序列化 類似於打包傳輸檔案。system.serializableattribute 序列化是指儲存和獲取磁碟檔案 記憶體或其他地方中的物件。在序列化時,所有的例項資料都儲存到儲存介質上...