SpringBoot如何接收数组参数的方法

 更新时间:2020年12月20日 16:19:22   作者:小诸葛的博客  
这篇文章主要介绍了SpringBoot如何接收数组参数的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1.创建一个表单实体类,将数组封装到实体类中(Post提交)

表单类代码:

@Data
public class MyForm {
  private int[] ids;
}

控制器代码:

@Slf4j
@RestController
@RequestMapping("/info")
public class InfoController {
 
  @PostMapping("/test")
  public String test(@RequestBody MyForm form){
    log.info(Arrays.toString(form.getIds()));
    return "success";
  }
}

前端代码:

wx.request({
   url:'http://localhost:8085/info/test',
   data:{
   ids:[1,2,3]
   },
   method:'POST',
   success:function(res){
   console.log(res);
   }
   })

2.通过方法内参数传递,注意!!!SpringBoot方法内接收数组时,数组在前端请求时必须将参数拼接在路径里提交才可以接收到。(Get提交)

后端代码:

@Slf4j
@RestController
@RequestMapping("/info")
public class InfoController {
 
  @GetMapping("/test")
  public String test(int[] ids){
    log.info(Arrays.toString(ids));
    return "success";
  }  
}

小程序前端代码:参数需拼接到路径里,并且要以GET方式提交

var ids = [1, 2, 3, 4]
  wx.request({
  url: 'http://localhost:8085/info/test?ids='+ids,
  method: 'GET',
  success: function(res){
  console.log(res);
  }
  })

请求头: 

vue axios前端代码(注意,数组需要调用encodeURIComponent进行编码):

   test() {
    let ary = [1,2,3]
    let params = {
     ids:encodeURIComponent(ary),};
    that.$http.get("http://localhost:8085/info/test",{params}).then(res=>{
     if(res.code==0){
      that.$message.success('查询成功')
     }else {
      that.$message.error(res.message||'查询失败')
     }
    }).catch(error=>{
     that.$message.error('查询失败')
    })
   }

注意!!!请求路径中的参数必须跟上图所示的一样才能被接收到。

到此这篇关于SpringBoot如何接收数组参数的方法的文章就介绍到这了,更多相关SpringBoot接收数组参数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Spring中基于xml的声明式事务示例详解

    Spring中基于xml的声明式事务示例详解

    这篇文章主要介绍了Spring之基于xml的声明式事务,本文通过图文实例代码相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • java判断字符串相等的方法

    java判断字符串相等的方法

    今天小编就为大家分享一篇java判断字符串相等的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • mybatis返回key value map集合方式

    mybatis返回key value map集合方式

    这篇文章主要介绍了mybatis返回key value map集合方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • springmvc实现json交互-requestBody和responseBody

    springmvc实现json交互-requestBody和responseBody

    本文主要介绍了springmvc实现json交互-requestBody和responseBody的相关知识。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • 浅谈Java回收对象的标记和对象的二次标记过程

    浅谈Java回收对象的标记和对象的二次标记过程

    这篇文章主要介绍了浅谈Java回收对象的标记和对象的二次标记过程的相关内容,小编觉得还是挺不错的,这里给大家分享一下,需要的朋友可以参考。
    2017-10-10
  • Java两种动态代理JDK动态代理和CGLIB动态代理详解

    Java两种动态代理JDK动态代理和CGLIB动态代理详解

    这篇文章主要介绍了Java两种动态代理JDK动态代理和CGLIB动态代理详解,代理模式是23种设计模式的一种,他是指一个对象A通过持有另一个对象B,可以具有B同样的行为的模式,为了对外开放协议,B往往实现了一个接口,A也会去实现接口,需要的朋友可以参考下
    2023-11-11
  • Java警告:原发性版11需要目标发行版11的解决方法和步骤

    Java警告:原发性版11需要目标发行版11的解决方法和步骤

    这篇文章主要介绍了Java警告:原发性版11需要目标发行版11的解决方法和步骤,文中通过图文介绍的非常详细,对大家学习或者使用java具有一定的参考借鉴价值,需要的朋友可以参考下
    2025-04-04
  • RocketMQ发送事务消息详解

    RocketMQ发送事务消息详解

    这篇文章主要介绍了RocketMQ发送事务消息详解,RocketMQ分布式事务消息不仅可以实现应用之间的解耦,又能保证数据的最终一致性,传统的大事务可以被拆分为小事务,不仅能提升效率,还不会因为某一个关联应用的不可用导致整体回滚,需要的朋友可以参考下
    2023-09-09
  • Java:泛型知识知多少

    Java:泛型知识知多少

    这篇文章主要介绍了java泛型基础知识及通用方法,从以下几个方面介绍一下java的泛型: 基础, 泛型关键字, 泛型方法, 泛型类和接口,感兴趣的可以了解一下
    2021-08-08
  • Java Dubbo协议下的服务端线程使用详解

    Java Dubbo协议下的服务端线程使用详解

    Dubbo是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。Dubbo内部使用了Netty、Zookeeper,保证了高性能高可用性,使用Dubbo可以将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心
    2023-03-03

最新评论