前言
有兄弟突然找到我,江湖救急,我以为是啥问题呢?

 
一看这位小兄弟也是半路出家, 没有对springboot的常用注解有过研究。
 不过没大碍,还是那句话, 学习的事情,只有先知和后知 
现在你看完这篇文章,你不就学会了,会了不就OK了。
正文
复现 小兄弟的 十万火急 :
 模拟一个实体类,接收参数:
 模拟写了一个用这个实体作为接收参数的接口:
模拟前端参数,form-data 表单格式,硬是要带前缀 :
  
 然后这时候接收参数,接收不到:
是的,key对不上,接收不到很正常。
OK,我们开始解决一下。
MyInitBinderConfig.java
  
   - 
    
     
    
    
     
      import org.springframework.web.bind.WebDataBinder;
     
    
- 
    
     
    
    
     
      import org.springframework.web.bind.annotation.ControllerAdvice;
     
    
- 
    
     
    
    
     
      import org.springframework.web.bind.annotation.InitBinder;
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      @ControllerAdvice
     
    
- 
    
     
    
    
     
      public 
      class 
      MyInitBinderConfig {
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
         
      @InitBinder("specialCar")
     
    
- 
    
     
    
    
         
      public 
      void 
      initCar
      (WebDataBinder webDataBinder) {
     
    
- 
    
     
    
    
     
              webDataBinder.setFieldDefaultPrefix(
      "param.");
     
    
- 
    
     
    
    
     
          }
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
         
      @InitBinder("user")
     
    
- 
    
     
    
    
         
      public 
      void 
      initUser
      (WebDataBinder webDataBinder) {
     
    
- 
    
     
    
    
     
              webDataBinder.setFieldDefaultPrefix(
      "user.");
     
    
- 
    
     
    
    
     
          }
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      }
     
    
代码简析:

然后再在接口上面做下手脚:
  

ok,再重启一下,看看效果:
可以看到识别出来了,准备做处理了:

效果很OK:
好了该篇就到这。
其实 WebDataBinder 配合InitBinder 针对这种表单方式的入参还能玩很多东西。
 针对参数类型做 参数转换、参数处理、参数校验等等,不过其实不是非常常用,不一一介绍。
可能有人会想,会不会还有一种十万火急的场景,不是from-data表单传参,但是前端硬是给咱们加了前缀传过来呢?
post json的那种方式呢?
其实说白了不就是key没对上么, 处理一下就好,当然这种情况,我其实很早就介绍过了,自取吧。
Springboot 一个注解搞定返回参数key转换 【实用】_小目标青年的博客-CSDN博客_springboot返回结果时自定义结果key
转载:https://blog.csdn.net/qq_35387940/article/details/128564805
查看评论
					