在表单提交时会调用相应的Controller方法,需要在方法中添加一个与表单绑定的Model对象,同时在方法的参数中传入该Model对象,如下所示:
@Controller
public class UserController {
@PostMapping("/register")
public String register(@ModelAttribute("userData") UserData userData, BindingResult result) {
//表单提交后的逻辑处理
}
}
其中,UserData
是一个Bean对象,该对象的属性需要与表单中的输入项一一对应。@ModelAttribute
注解表示将表单数据绑定到userData
属性,BindingResult
用于捕捉表单验证中的错误信息。在HTML中,表单的name
属性需要与Model中的属性名对应,如下所示:
这样,当表单提交时,就能把表单数据绑定到userData
属性上,并且在验证表单时也能正常工作,避免出现“无法在请求属性中找到名为‘userData’的绑定结果或普通目标对象”的错误。