繁体   English   中英

如何在Spring MVC中将多维数组作为@RequestParam处理?

[英]How to handle multidimensional array as @RequestParam in Spring MVC?

因此,基本上,我有一个发送以下输入的表单:

<form>
  <input type="text" name="days[monday][start]" value="1">
  <input type="text" name="days[monday][end]" value="2">
  <input type="text" name="days[tuesday][start]" value="1">
  <input type="text" name="days[tuesday][end]" value="2">
</form>

如何在Spring MVC中将其作为@RequestParam

到目前为止,我尝试了

@RequestParam(value= "days", required = true) Map<String, Object>[] days
......
@RequestParam(value= "days", required = true) Map<String, Map<String, Object>> days
... or even ...
request.getParameter("days");

但是没有成功。

您需要将其包装在一个自定义对象中,该对象将保存Map对象。 然后,您将不得不更改表单的提交和初始化。

public class CustomWrapper{

    private Map<String, Object> customMap= new HashMap<String, Object>();

    public Map<String, Object> getCustomMap() {
        return customMap;
    }

    public void setCustomMap(Map<String, Object> customMap) {
        this.customMap = customMap;
    }

}

@RequestParam("days") CustomWrapper days

更多信息在这里

尝试如下所示:

@RequestMapping(value="/test", method = RequestMethod.POST)
public void method(@RequestParam(value = "param[][]") String[][] paramValues)
{
    // rest of your code
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM