栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用Spring MVC为每个对象传递列表参数?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用Spring MVC为每个对象传递列表参数?

您可以按照自己认为合适的任何方式传递参数,一种方法是按如下所示的自然分组传递参数:

http://127.0.0.1:8080/dataweb/index?dc1Server=dc1HostA,dc1IPAddressA&dc1Server=dcHostB,dc1IPAddressB....

通过为每个组使用相同的参数名称,您需要使用

MultiValueMap
。A
MultiValueMap
或多或少是a
Map<String,List<String>>
,因此具有相同名称(dc1Server,dc2Server等)的参数将在同一列表中。您将使用它来获取传递的参数的完整列表,如下所示:

public HashMap<String, String> handleRequest(@RequestParam MultiValueMap<String,String> allRequestParams)

然后,您将拥有3个键,其中

dc1Server
将包含所有dc1Server数据,
dc2Server
所有dc2Server等

@ModelAttribute
如果要直接映射到域对象,可以考虑使用:链接

编辑

public void testSpringMultiValueMap() {        MultiValueMap<String, String> map = new linkedMultiValueMap<String, String>();        map.add("dc1Server", "dc1HostA,dc1IPAddressA");        map.add("dc1Server", "dc1HostB,dc1IPAddressB");        map.add("dc1Server", "dc1HostC,dc1IPAddressC");        map.add("dc2Server", "dc2HostA,dc2IPAddressA");        map.add("dc2Server", "dc2HostB,dc2IPAddressB");        map.add("dc2Server", "dc2HostC,dc2IPAddressC");        List<String> dc1List = map.get("dc1Server");        for(String pair: dc1List) { String[] tokens = pair.split(","); System.out.println("host: " + tokens[0] + " ip: " + tokens[1]);        }    }


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/395538.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号