Spring MVC中@InitBinder注解是如何应用的?

网站建设3年前发布
17 0 0

2023030612111488ddb82251a09b2d4ac707ef7d42d077c9dddd531,环境:Springboot2.4.12,​@Controller或@ControllerAdvice类可以有@InitBinder方法来初始化WebDataBinder的实例,这些方法可以:,@InitBinder方法可以注册控制器特定的java.bean.PropertyEditor或Spring Converter和 Formatter组件。另外,你可以使用MVC配置在全局共享的FormattingConversionService中注册Converter和Formatter类型。,@InitBinder方法支持许多与@RequestMapping方法相同的参数,除了@ModelAttribute(命令对象)参数。通常,它们是用WebDataBinder参数(用于注册)和一个void返回值声明的。,注意以下几点:,在上面的示例中注册了一个类型转换器从字符串转换为Long类型 并且在原来值基础上增加了666L。,在上面的Controller示例中,参数的解析器是RequestParamMethodArgumentResolver。,调用父类的resolveArgument方法。,在上面执行流程中,我们知道获取了一个WebDataBinder对象和由@InitBinder 注解的方法的调用执行。接下来就是进行类型的转换。,以上就是参数绑定及类型转换的过程。

© 版权声明

相关文章