我有一个如下定义的弹簧控制器:
@Controller
@RequestMapping("/user")
class UserController {
...
@RequestMapping(method=RequestMethod.POST)
public String save(User user) {
// Do something with user
return "redirect:/...";
}
}
在这种情况下,发布数据(从表单提交的数据)如何映射到User对象?有没有关于它是如何工作的文件?
如果我有两个像这样的POJO会怎么样?
@Controller
@RequestMapping("/user")
class UserController {
...
@RequestMapping(method=RequestMethod.POST)
public String save(User user, Foo anotherPojo) {
// Do something with user
return "redirect:/...";
}
}
解决方法:
在第一种情况下,Spring MVC将尝试将HTTP POST参数名称与User类的属性名称进行匹配,并根据需要转换这些参数值的类型.
在第二种情况下,我相信Spring会抛出异常,因为它只接受一个Command对象.