一个用户多个购物车怎么存Redis
时间: 2023-05-18 16:04:38 浏览: 70
对于一个用户多个购物车的存储,可以使用 Redis 的 Hash 数据结构来实现。具体来说,可以将每个用户的购物车存储在一个 Hash 中,Hash 的 key 为用户 ID,value 为一个包含多个购物车的 Map。在 Map 中,可以使用购物车 ID 作为 key,购物车内容作为 value。这样,每个用户就可以拥有多个购物车,并且可以方便地进行增删改查操作。以下是示例代码:
// 存储购物车
public void saveCart(String userId, String cartId, String cartContent) {
Jedis jedis = jedisPool.getResource();
try {
jedis.hset(userId, cartId, cartContent);
} finally {
jedis.close();
}
}
// 获取购物车
public String getCart(String userId, String cartId) {
Jedis jedis = jedisPool.getResource();
try {
return jedis.hget(userId, cartId);
} finally {
jedis.close();
}
}
// 删除购物车
public void deleteCart(String userId, String cartId) {
Jedis jedis = jedisPool.getResource();
try {
jedis.hdel(userId, cartId);
} finally {
jedis.close();
}
}
// 获取所有购物车
public Map<String, String> getAllCarts(String userId) {
Jedis jedis = jedisPool.getResource();
try {
return jedis.hgetAll(userId);
} finally {
jedis.close();
}
}