在线教育-天热销视频榜单实战-List数据结构设计
我们先随机获取整个列表的内容。
我们模拟一个去添加数据的接口:
运行:
我们可以看到这里的数据。
我们现在启动我们的应用和controller:
就可以查到我们的数据了。
我们进行人工操作位,进行赋值替换:
这个发生了变化。
自营电商平台-购物车实现案例-Hash数据结构最佳实践
创建一个vo类:
public class CartItemVO {
/**
* 商品id
*/
private Integer productId;
/**
* 购买数量
*/
private Integer buyNum;
/**
* 商品标题
*/
private String productTitle;
/**
* 图片
*/
private String productImg;
/**
* 商品单价
*/
private int price ;
/**
* 总价格,单价+数量
*/
private int totalPrice;
public int getProductId() {
return productId;
}
public void setProductId(int productId) {
this.productId = productId;
}
public Integer getBuyNum() {
return buyNum;
}
public void setBuyNum(Integer buyNum) {
this.buyNum = buyNum;
}
public String getProductTitle() {
return productTitle;
}
public void setProductTitle(String productTitle) {
this.productTitle = productTitle;
}
public String getProductImg() {
return productImg;
}
public void setProductImg(String productImg) {
this.productImg = productImg;
}
/**
* 商品单价 * 购买数量
* @return
*/
public int getTotalPrice() {
return this.price*this.buyNum;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public void setTotalPrice(int totalPrice) {
this.totalPrice = totalPrice;
}
}
购物车对象:
public class CartVO {
/**
* 购物项
*/
private List<CartItemVO> cartItems;
/**
* 购物车总价格
*/
private Integer totalAmount;
/**
* 总价格
* @return
*/
public int getTotalAmount() {
return cartItems.stream().mapToInt(CartItemVO::getTotalPrice).sum();
}
public List<CartItemVO> getCartItems() {
return cartItems;
}
public void setCartItems(List<CartItemVO> cartItems) {
this.cartItems = cartItems;
}
}
然后我们再来看数据源层:
json工具类:
现在我们做添加购物车的接口:
再运行一次:
我们加进去了一条数据。
- 查看我的购物车
就会返回回我们的购物车信息了。
清空购物车方法:
这个方法很简单就是redis根据key进行删除: