不幸的是
FormHttpMessageConverter(
@RequestBody当内容类型为时,用于带注释的参数
application/x-www-form-urlenpred)无法绑定目标类
@ModelAttribute。
因此,您需要
@ModelAttribute而不是
@RequestBody。如果您不需要将不同的内容类型传递给该方法,则只需替换注释即可:
@RequestMapping(method = RequestMethod.POST)public ModelAndView create(@ModelAttribute UserAccountBean account) { ... }否则,我想您可以创建一个单独的方法表单来处理具有适当
headers属性的表单数据:
@RequestMapping(method = RequestMethod.POST, headers = "content-type=application/x-www-form-urlenpred") public ModelAndView createFromForm(@ModelAttribute UserAccountBean account) { ... }编辑:
另一个可能的选择是
HttpMessageConverter通过组合
FormHttpMessageConverter(将输入消息转换为参数映射)和
WebDataBinder(将参数映射转换为目标对象)来实现自己的选择。



