求助求助!!
使用SpringBoot框架,集成swagger框架。如下图,通过swagger ui可视化填写参数,构造请求发送到controller中。
我需要对传递的所有参数进行拼接,有没有办法不手动写死参数名称,在controller里一次性获取到所有传递过来的参数,然后遍历参数和值,实现自动的拼接呢?

解决方案 »

  1.   

    写成这样? 从request里获得参数 再处理拼接
    @RequestMapping("/index")
    public String index(HttpServletRequest request, HttpServletResponse response,Model model){
      // code
    }
      

  2.   

    传个json格式的字符串就好了,在后端再把字符串转json
      

  3.   

    1楼的方法里面有个request,request.getParameters会返回一个map,里面是请求的所有参数,遍历这个map就可以了
      

  4.   

    这是发送post请求了。而且httpservletrequest拿不到参数map
      

  5.   

    ParameterMap的size总为0
      

  6.   

    给参数加了@RequestParam注解,request就拿不到了,为什么呢
      

  7.   

    使用aop获取取所有参数,或者@requestBody直接将json转成对象
      

  8.   

    不太明白你要干什么,你是觉得参数过多写着麻烦?你这种场景难道不是前端传json,后端requestbody注解就能搞定的么或者我觉得你可以了解下RequestBodyAdvice和HttpMessageConverter组合来自定义参数序列化和反序列化
      

  9.   

    面向对象编程,能用对象就用对象,swagger定义的参数应该是所有接口通用的参数,可以在拦截器里面处理,对于不需要swagger参数的接口,可以定义一个注解,在拦截器中获取注解,如果请求注解为null就不校验swagger参数
      

  10.   

    请求注解为null就校验swagger参数,不为null时跳过参数校验