在传统项目的Controller的方法中传入参数,对象中的属性相同时,会出现以下错误
Book类和Author类
这是因为两个对象中的name相同,传参时分不清西游记和六小龄童到底应该放入哪个对象里了,索性系统就俩都给放了
通过@ControllerAdvice中的@InitBinder注解可以绑定一个前缀的别名
@InitBinder("book") 注解表示该方法用来处理和Book和相关的参数,在方法中,给参数添加一个 book 前缀,即请求参数要有book前缀
然后再在Controller的方法取一个别名就可以和GloBalHanddlder绑定一起使用了
成功后的样子时这样