我想删除添加到购物车的商品。购物车将有添加的项目,每个项目都有删除按钮。当我单击删除按钮时,该项目不会从购物车中删除。卡片已加载已添加的项目。
删除控制器代码
@RequestMapping("deletefromcart.html")
public ModelAndView removeFromCart(@RequestParam("id") int id) {
Product requiredProduct = productService.getProductById(id);
cart.removeItem(requiredProduct);
return new ModelAndView("deletefromcart");
}
Cart.java
@Component
@Scope("session")
public class Cart {
private List<Product> shopping = new ArrayList<Product>();
public void addItem(Product newItem)
{
this.shopping.add(newItem);
}
public void removeItem(Product newItem)
{
this.shopping.remove(newItem);
}
}
答案 0 :(得分:0)
它是一个对象相等的问题,List在remove()操作期间使用它。我将equals()和hashcode()(都覆盖)添加到产品类中。现在它正常工作。