redis 存入 list<HashMap>,
时间: 2023-12-16 21:06:30 浏览: 86
redis存储List集合
Redis 中可以使用 List 数据结构来存储 HashMap 对象。
首先需要将 HashMap 对象转换为字符串,可以使用 JSON 格式进行转换。在 Java 中可以使用 Jackson、Gson 等库来进行转换。
然后可以通过 Redis 的 lpush 命令将转换后的字符串存入 List 中,如下所示:
```
HashMap<String, String> map = new HashMap<>();
map.put("key1", "value1");
map.put("key2", "value2");
ObjectMapper objectMapper = new ObjectMapper();
String json = objectMapper.writeValueAsString(map);
Jedis jedis = new Jedis("localhost");
jedis.lpush("myList", json);
```
如果需要获取 List 中存储的 HashMap 对象,可以使用 Redis 的 lrange 命令,将获取到的字符串再进行反序列化转换为 HashMap 对象,如下所示:
```
List<String> jsonList = jedis.lrange("myList", 0, -1);
for (String json : jsonList) {
HashMap<String, String> map = objectMapper.readValue(json, new TypeReference<HashMap<String, String>>(){});
System.out.println(map);
}
```
阅读全文