form表单提交,后台方法请求提示400,不进断点

form表单提交,后台方法请求提示400

发现前台的date类型form数据不能传值到controller中的参数中,需要在请求获取数据之前转换类型

@initBinder可以直接在你的controller中提供数据绑定。initbinder 方法不能有返回值,一般是返回void。下面的例子是给所有的java.util.Date类型的属性配置一个CustomDateEditor。
@initBinder还可以配置别的属性编辑器,例如CustomNumberEditor、CustomBooleanEditor等,实现数据绑定


@Controller
public class Controller {

    @InitBinder
    protected void initBinder(WebDataBinder binder) {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        dateFormat.setLenient(false);
        binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, false));
    }

    @PostMapping("addForm")
    public void addForm(Register register){
        ...
    }
}

你可能感兴趣的:(java)