redis中存儲java對象的兩種方式

redis中存儲java對象的兩種方式

根據redis的存儲原理,Redis的key和value都支持二進制安全的字符串

1.利用序列化和反序列化的方式

存儲java對象我們可以通過對象的序列化與反序列化完成存儲於取出,這樣就可以使用redis存儲java對象了

步驟:創建一個序列化和反序列化的工具類

public class SerializeUtil {  

public static byte[] serialize(Object object) {  

ObjectOutputStream oos = null;  

ByteArrayOutputStream baos = null;  

try {  

//序列化  

baos = new ByteArrayOutputStream();  

oos = new ObjectOutputStream(baos);  

oos.writeObject(object);  

byte[] bytes = baos.toByteArray();  

return bytes;  

} catch (Exception e) {  

}  

return null;  

}  

public static Object unserialize(byte[] bytes) {  

ByteArrayInputStream bais = null;  

try {  

//反序列化  

bais = new ByteArrayInputStream(bytes);  

ObjectInputStream ois = new ObjectInputStream(bais);  

return ois.readObject();  

} catch (Exception e) {  

}  

return null;  

}  

}

每次存儲和取出對象時都是需要調用方法序列與反序列的

方法2:將java對象轉換爲json字符串,利用json與java對象之間可以相互轉換的方式進行存值和取值

具體存值和取值在上一篇文章中有寫json與java對象的相互轉換問題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章