如标题所述,在将 Spring MVC 的 @ModelAttribute 注释应用于方法参数时,我可以使用哪些目标类型?
我知道以下语法(我自己经常使用):
public void finishForm(@ModelAttribute UserInfo info) {
.......
return model;
}
这将是表单支持 Controller 的一部分,其中 Spring Databinding 正在执行所有解析并随后填充我的自定义对象 (UserInfo
)。
但在我目前的情况下,填充 Java Properties
会更方便对象或 Map<String, String>
与表单输入。
这是否是一个有效的用例,您能否为@ModelAttribute 提供所有目标类型的引用?
最佳答案
如果您想在 map 中输入所有表单,您可以使用以下方法:
public void finishForm(HttpServletRequest request) {
Map<String, String[]> userInfo = request.getParameterMap();
userInfo.keySet().forEach(s -> {
System.out.println(s + " = "+Arrays.toString(userInfo.get(s)));
});
}
关于java - Spring 可以将哪些参数类型注入(inject)到 Controller 处理程序方法中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46817791/