gpt4 book ai didi

java - 如何在servlet中获取参数时将String转换为ArrayList

转载 作者:行者123 更新时间:2023-12-02 06:12:54 35 4
gpt4 key购买 nike

enter image description here

我正在检索用户购买的产品列表,但由于构造函数中产品的类型为列表,因此出现错误。我不知道如何转换它

String buyer = request.getParameter("buyer");
List prodlist = request.getParameter("product");
Bill bill = new Bill(buyer, prodlist);

这是构造函数的代码

    public Bill(String buyer, List<Product> product) {
super();
this.buyer = buyer;
this.product= product;
}

Product类的属性

    private int id;
private String name;
private float price;

最佳答案

(已编辑:使用对象类。)

要么

String[] products = request.getParameterValues("product");
List<Product> prodlist = new ArrayList<>();
for (String productName : products) {
Product product = loadProduct(productName); // Or such
prodlist.add(product);
}

或使用

List<String> prodlist = Arrays.asList(request.getParameterValues("product"));

那个 getParameterValues 用于同一参数的多个值 "product"是可能的。这通常是 String[]getParameter(String)方法适用于仅出现一次的参数;实际上是一种特殊情况。

对于 URL "http: ... my.html?product=pc&product=phone&product=tablet" 会产生相同的结果.

您应该检查 HTML 中是否确实包含几个 <input name="product"> ,可能使用浏览器开发者工具,一般通过浏览器内的 F12 调用。

关于java - 如何在servlet中获取参数时将String转换为ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55895179/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com