我試圖存儲從數據庫到Redis客戶端的Arraylist值。但Redis只有Key/Value方法,Key/Value必須是String格式。我如何將Key存儲爲字符串和值作爲Arraylist。如何在Redis緩存中存儲ArrayList?
回答
,你必須使用Map來存儲數據與鍵和值
Map<String, ArrayList<String>> map = new Map<String, ArrayList<String>>();
ArrayList<String> a= new ArrayList<String>();
a.add("Ganesh");
map.put("Name", a);
我想緩存來自數據庫的結果。所以我們使用Redis緩存機制。例如,當相同的查詢先觸發時,如果不是DB,它將檢查緩存。如果緩存中可用的數據將返回給客戶端,而不會觸及數據庫。 –
這是新的新HashMap不是新地圖 – Jason
但Redis的只有鍵/值方法鍵/值必須是字符串格式
Redis actually has very good support for storing values as lists,如果這就是你想要做的。這樣做,如果你想對值做任何類型的列表操作。
如果您只是想存儲列表並將其作爲一個整體進行檢索,那麼您只需將其序列化爲一個字符串,然後再存儲到Redis中。在這種情況下,將列表編碼爲JSON字符串(或任何其他序列化格式)並將其存儲在Redis中。然後,只要獲得它,並在你想要它時反序列化。
您可以輕鬆地做到這一點使用基於Redis的框架 - Redisson。它提供包裹收藏品,如java.util.List
,java.util.Set
,java.util.Map
等等。
下面是List
一個例子:
Config config = ...
RedissonClient redisson = Redisson.create(config);
List<String> list = redisson.getList("myList");
list.add("1");
list.add("2");
list.add("3");
list.remove("2");
它支持多種流行的編解碼器,像Jackson JSON
,Avro
,Amazon Ion
,Smile
,CBOR
,MsgPack
,Kryo
,FST
,LZ4
,Snappy
和JDK Serialization
- 1. Keycloak - Infinispan Redis緩存存儲
- 2. Yii2 redis緩存在文件緩存中
- 3. 如何在Redis中緩存表格
- 4. 存儲在ArrayList中
- 5. 存儲在ArrayList中
- 6. Django 1.9在Redis中緩存
- 7. 如何將此存儲在Redis中?
- 8. 如何在Redis中存儲值列表?
- 9. 在redis中如何存儲鍵值對?
- 10. 如何在redis中存儲JSF會話?
- 11. 在Redis緩存中存儲5000+條記錄
- 12. 使用laravel在緩存/ redis中存儲大型結果集5
- 13. 有沒有人在redis緩存中存儲過mp3?
- 14. 清除存儲在Redis中的Doctrine緩存
- 15. redis如何存儲數據
- 16. 如何驗證imcache中的redis緩存?
- 17. c# - 如何在ViewState中存儲ArrayList?
- 18. 如何在SharedPreferences中存儲ArrayList
- 19. 緩存arraylist
- 20. 在緩存中存儲MemoryStream
- 21. Django Redis緩存值
- 22. 排序redis緩存
- 23. Redis緩存結構
- 24. Laravel 5.1 Redis緩存
- 25. 用Redis緩存替換Windows Azure緩存?
- 26. 在Django緩存:Redis + Django&Varnish
- 27. 在sharedPreferences中存儲Arraylist
- 28. 在HashMap中存儲ArrayList
- 29. 在ArrayList中存儲jsonobject
- 30. 將arraylist存儲在IsolatedStorage中
使用的HashMap相當。 –