如何将 URL 中以逗号分隔的值列表转换为 Struts 2 中操作类中定义的 ArrayList?

问题描述 投票:0回答:2
www.abcd.com/user/getuserstats.htm?userId=123123

在此 API 中,

userId
设置为映射到此操作的
userId
类中名为
Action
的字段。

现在,为此

www.abcd.com/user/getuserstats.htm?listOfUsers=123123,456456,789789,42568,58963

我需要知道,我们如何将这个

userId
列表映射到相应的
ArrayList
类中定义的
Action
中,以便将其映射为
ArrayList
而不是
String

注意:我不想获取一串

userId
并稍后将其转换为
ArrayList
。我希望
userId
列表自动映射到列表或
ArrayList
。我确信,一定有办法实现这一目标。

java arraylist type-conversion struts2 url-parameters
2个回答
1
投票

基本上,我发现它可以这样实现:

www.abcd.com/user/getuserstats.htm?userId=123123&userId=4578&userId=567&userid=987

这些参数将进入已在操作类中声明的数组列表。


1
投票

可以以 CSV 格式提交值。 Struts2 有一个内置类型转换器,它能够填充集合属性,例如列表。

使用多个同名参数的解决方法是可能的,但它无需使用 Struts2 类型转换即可工作。最后一个是框架提供的强大功能之一,不使用它就太不聪明了。

此功能的更详细说明是这里

值应采用 CSV 格式,如本答案所示。

这也会让您了解您所购买的房产类型 应该绑定到隐藏字段。例如,您可以使用列表 或 Integer[] 用于设置值 25、27、28 的属性。

Struts2 有一个内置转换器,可以将这些值转换为列表 或自动排列。

© www.soinside.com 2019 - 2024. All rights reserved.