Redis可以储存对象吗(redis里可以存对象吗)

Redis对于开发者来说是一个功能强大、性能卓越的内存关系数据库,它既可以使用key-value存储,也支持发布与订阅和数据表分割等功能,在一般的数据读取和储存方面也有不错的表现。那么Redis是否可以储存对象呢?

答案是肯定的,Redis可以储存对象信息。其实Redis可以储存的类型非常多,它可以储存字符串(strings)、散列(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)五种类型的数据结构。在储存对象信息前,你需要将对象信息转换成 JSON(JavaScript Object Notation)字符串,然后使用Redis中的SET命令来储存。

例如,我们想要储存一个Person对象,其属性分别有name、gender、age,JBooson把其转换为JSON字符串如下:

{
"name":"Jab",
"gender":"male",
"age":20
}

然后我们可以使用Redis SET命令将其储存起来:

SET person {
"name":"Jab",
"gender":"male",
"age":20
}

另外Redis 还提供了GET命令获取储存在Redis的对象的JSON字符串:

GET person

当然我们可以借助于Jackson或其他库将从Redis中获取到的JSON字符串转换成Person对象,例如:

ObjectMapper mapper = new ObjectMapper();
String json = RedisClient.get("person");
Person person = mapper.readValue(json, Person.class);

可以看到Redis提供了两个存储对象信息的命令,即SET和GET,可以让我们方便地将对象信息转换为JSON字符串,并储存在Redis中,从而节省了时间,提高了储存效率。


数据运维技术 » Redis可以储存对象吗(redis里可以存对象吗)