正如标题所说,在将MVC应用于方法参数时,我可以在Spring MVC的@ModelAttribute注释中使用哪些目标类型?
我知道以下语法(我自己经常使用):
public void finishForm(@ModelAttribute UserInfo info) {
.......
return model;
}
这将是表单支持控制器的一部分,其中Spring Databinding正在进行所有解析,然后填充我的自定义对象(UserInfo
)。
但在我目前的情况下,使用表单输入填充Java Properties
对象或Map<String, String>
会更方便。
这是一个有效的用例,你能为@ModelAttribute提供所有目标类型的引用吗?
答案 0 :(得分:1)
如果您想在地图中输入所有表单输入,可以使用以下内容:
public void finishForm(HttpServletRequest request) {
Map<String, String[]> userInfo = request.getParameterMap();
userInfo.keySet().forEach(s -> {
System.out.println(s + " = "+Arrays.toString(userInfo.get(s)));
});
}