我有一个像下面这样的 Action
public class CompareAction {
private Long[] pids;
public Long[] getPids() {
return pids;
}
public void setPids(Long[] pids) {
this.pids = pids;
}
public String displayComparison() {
for (Long pid : pids) {
System.out.println("pid = " + pid);
System.out.println();
}
return "success";
}
}
我正在尝试通过在地址栏
http://localhost:8080/sm-shop/compare?pids=12,23,34
中键入以下url来发送数组。我想要的输出是pid = 12
pid = 23
pid = 34
但是我得到的是
pid = 122334
我尝试了Google搜索,但找不到如何执行此操作。请帮助我找出问题所在。
最佳答案
您需要多次传递参数pids
:
http://localhost:8080/sm-shop/compare?pids=12&pids=23&pids=34
如果您将
pids
属性声明为数组,则Struts2会自动将多个参数映射到数组。