繁体   English   中英

将所有元素添加到java中的另一个List中?

[英]Add all elements to the another List in java?

我正在尝试像任何电子商务网站一样在“ productId”的基础上实现“添加到购物车”的概念。 当我调用此控制器时,它仅添加用户添加到列表中的最后一个元素,而不是所有产品列表。

@RequestMapping("/addcart/{list.productId}")
public String addCart(@PathVariable("list.productId") Integer productId, Model m, HttpSession session) {

    List<Product> cartlist = productDao.findById(productId);
    List<Product> useradd = new ArrayList<>();
    for (Product e : cartlist) {
        useradded.add(e);
    }

    session.setAttribute("sessioncartview", useradded);
    return "redirect:/";
}

我只找到最后添加的一种产品,而不是所有产品列表。 在“useradded”中。 我想添加列表中的所有元素,即“ useradded”对象,然后与会话绑定。 我怎样才能做到这一点 ?

因为每次调用此方法时都要创建一个新的useradded列表。

而不是做

List<Product> useradd = new ArrayList<>();

您可以从会话中获取useradd ,并且仅在不存在新实例的情况下创建它。

List<Product> useradd = session.get("sessioncartview");
if (useradd == null) {
    useradd = new ArrayList<>();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM