使用redis存储对象

it2023-07-11  65

0.设计思路

使用fastjson序列化对象为String,存储对象到redis 取出时使用fastjson反序列化复原对象

1.依赖工具

fastjson jedis

使用maven添加依赖

<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.8.0</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version> </dependency>

2.对象序列化操作 使用fastjson进行序列化与反序列化

JSON.toJSONString(object)); JSON.parseObject(value, clazz);

3.redis存取操作

jedis.get(key); jedis.set(key, JSON.toJSONString(object));

4.整体代码实现

import com.alibaba.fastjson.JSON; import redis.clients.jedis.Jedis; // 接收指定的String类型key和要存储的对象 public static void setJsonString(String key, Object object) { Jedis jedis = RedisConnection.getJedis(); jedis.set(key, JSON.toJSONString(object)); jedis.close(); } //根据key和对象的类型取出并复原对象 public static Object getJsonObject(String key, Class clazz{ Jedis jedis = RedisConnection.getJedis(); String value = jedis.get(key); jedis.close(); return JSON.parseObject(value, clazz); }

5.其他实现方式

1.实现接口java.io.Serializable来序列化对象 2.使用redis的hashset存储对象的信息

最新回复(0)