欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

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

时间:2021-05-18 09:42:35|栏目:JAVA代码|点击:

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('查询失败')
    })
   }

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

上一篇:JAVA并发编程有界缓存的实现详解

栏    目:JAVA代码

下一篇:Java将对象保存到文件中/从文件中读取对象的方法

本文标题:SpringBoot如何接收数组参数的方法

本文地址:http://www.codeinn.net/misctech/123586.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有