将字符串列表映射到动作类中定义的arraylist - Struts2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将字符串列表映射到动作类中定义的arraylist - Struts2相关的知识,希望对你有一定的参考价值。

www.abcd.com/user/getuserstats.htm?userId=123123

在这个api中,userId被设置为映射到此动作的userId类中名为Action的字段。

现在,为此

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

我需要知道如何在相应的userIds类中定义的ArrayList中映射这个Action列表,以便它被映射为ArrayList而不是String

注意:我不想获得一个UserIds字符串并稍后将其转换为arrayList。我希望userIds的列表自动映射到列表或arrayList。我相信必须有办法实现。

答案

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

呜呜呜.ABCD.com/user/get user stats.htm?user ID=123123&user ID=4578&user ID=567&user ID=987

这些参数将进入已在动作类中声明的arraylist。

另一答案

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

可以使用具有相同名称的多个参数进行解决方法,但它可以在不使用Struts2类型转换的情况下工作。最后一个是框架提供的强大功能之一,它很聪明,不使用它。

有关此功能的更详细说明是here

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

这也将让您了解应该绑定到隐藏字段的属性类型。例如,您可以使用List或Integer []作为设置值25,27,28的属性。

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

以上是关于将字符串列表映射到动作类中定义的arraylist - Struts2的主要内容,如果未能解决你的问题,请参考以下文章

使用 Dozer 的自定义转换器将对象列表映射到另一个列表

ActionListener - 将动作添加到 JButtons 的 ArrayList

使用 JSP 页面映射列表并在 Action 类中获取值。它在 Action 类中将结果列表作为笛卡尔积提供

将列表存储到数组列表中的字符串

ArrayList与HashMap的用法

将整数映射到组合框中的自定义类的字符串