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