在传统项目的Controller的方法中传入参数,对象中的属性相同时,会出现以下错误

   

   

Book类和Author类

@ControllerAdvice全局数据预处理@ControllerAdvice全局数据预处理

   

@ControllerAdvice全局数据预处理

这是因为两个对象中的name相同,传参时分不清西游记六小龄童到底应该放入哪个对象里了,索性系统就俩都给放了

   

通过@ControllerAdvice中的@InitBinder注解可以绑定一个前缀的别名

   

@ControllerAdvice全局数据预处理

@InitBinder("book") 注解表示该方法用来处理和Book和相关的参数,在方法中,给参数添加一个 book 前缀,即请求参数要有book前缀

   

然后再在Controller的方法取一个别名就可以和GloBalHanddlder绑定一起使用了

   

@ControllerAdvice全局数据预处理

成功后的样子时这样

@ControllerAdvice全局数据预处理@ControllerAdvice全局数据预处理

相关文章:

  • 2022-02-21
  • 2021-11-09
  • 2021-08-04
  • 2021-08-11
  • 2022-12-23
  • 2022-12-23
  • 2021-05-26
  • 2022-12-23
猜你喜欢
  • 2021-11-22
  • 2021-09-09
  • 2022-12-23
  • 2021-07-14
  • 2021-10-21
  • 2021-12-15
  • 2021-09-10
相关资源
相似解决方案