我正在检索用户购买的产品列表,但由于构造器产品的类型为List,所以出现错误。我不知道怎么转换
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;
}
产品类别的属性
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/