JAVA全系列 教程
3762个小节阅读:7088.2k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
当管理员下架某件商品后,所有用户的购物车中该商品也应该被删除,所以我们要编写给所有用户的购物车中删除某件商品的方法。
xxxxxxxxxx
@Override
public void deleteCartGoods(CartGoods cartGoods) {
BoundHashOperations cartList = redisTemplate.boundHashOps("cartList");
// 所有用户的购物车
Map<String,List<CartGoods>> allCartGoods = cartList.entries();
Set<Map.Entry<String, List<CartGoods>>> entries = allCartGoods.entrySet();
// 遍历所有用户的购物车
for (Map.Entry<String, List<CartGoods>> entry : entries) {
List<CartGoods> goodsList = entry.getValue();
// 遍历一个用户购物车的所有商品
for (CartGoods goods : goodsList) {
// 如果该商品是被删除的商品
if (cartGoods.getGoodId().equals(goods.getGoodId())){
goodsList.remove(goods);
break;
}
}
}
// 将改变后的map重新放入redis
redisTemplate.delete("cartList");
redisTemplate.boundHashOps("cartList").putAll(allCartGoods);
}