解决Springboot 2 的@RequestParam接收数组异常问题

 更新时间:2021年08月23日 14:17:34   作者:Garc  
这篇文章主要介绍了解决Springboot 2 的@RequestParam接收数组异常问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Springboot 2 的@RequestParam接收数组异常

最近Vue 开发前端,然后向后台springboot 2 传递数组,发现springboot 2 接收数组方式无法使用

-- @RequestParam("ids[]") List<String> ids --

然后抛出以下异常,经过多轮验证发现@RequestParam("ids[]") 失效,无法使用(不知道是BUG,还是改了,之前可以的)

Resolved [org.springframework.web.bind.MissingServletRequestParameterException] Required String[] parameter 'ids[]' is not present]

所以这里给出解决方式:

1、后端方法接收去除@RequestParam ,然后使用数组接收 例如:String[] ids

2、前端传递数组axios 需要使用 URLSearchParams 包裹数组

3、请求头中参数传递显示为如图所示:

无论是axios还是ajax 只要请求头传递格式是这样的,后端用String[] ids 接收就行了

Springboot 的 用数组接参方法 Post接参 RequestParam

@RequestParam(value = "meetingIds",required = false)

其中value 的值随传参改变

加在接参方法的前边,例:

public  JSONObject getInfo(String searchText, @RequestParam(value = "meetingIds",required = false) List<Long> meetingIds){}

如果传递参数的格式是 meetingIds = 1,23,4,5 这样的 则直接写参数名meetingIds 即可;

有几点需要注意:

1、如果是post传参,前端直接传数组类型的数据,后台接参需要吧value改为 meetingIds[] 注意括号

2、如果是参数有可能不传,则需要设置required = false , 如果不写,则默认会是true,也就是必然有参数,如果没参数会报错,不进入方法。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Spring 使用注解方式进行事务管理配置方式

    Spring 使用注解方式进行事务管理配置方式

    本篇文章主要介绍了Spring 使用注解方式进行事务管理配置方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Java实现简易版联网坦克对战小游戏(附源码)

    Java实现简易版联网坦克对战小游戏(附源码)

    这篇文章主要给大家介绍了关于Java实现简易版联网坦克对战小游戏的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • Java实现打字游戏

    Java实现打字游戏

    这篇文章主要为大家详细介绍了Java实现打字游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-08-08
  • java使用异或实现变量互换和异或加密解密示例

    java使用异或实现变量互换和异或加密解密示例

    这篇文章主要介绍了使用异或实现变量互换和异或加密解密示例,需要的朋友可以参考下
    2014-02-02
  • MyBatis Plus Mapper CRUD接口测试方式

    MyBatis Plus Mapper CRUD接口测试方式

    在数据库管理系统中,插入记录是添加新数据条目,而删除操作包括根据主键ID单条删除和批量删除,也可以基于特定条件进行删除,删除操作的SQL语句是通过键值对在Map中拼接而成,如delete from 表 where key1=value1 AND key2=value2
    2024-09-09
  • Spring中DeferredResult异步处理

    Spring中DeferredResult异步处理

    DeferredResult是Spring中处理异步请求的强大工具,可以帮助改善应用程序的性能和用户体验,本文就来介绍一下Spring中DeferredResult异步处理,感兴趣的可以了解一下
    2023-12-12
  • java获取文件大小的几种方法

    java获取文件大小的几种方法

    这篇文章主要介绍了java获取文件大小的几种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • Lombok注解-@SneakyThrows的使用

    Lombok注解-@SneakyThrows的使用

    这篇文章主要介绍了Lombok注解-@SneakyThrows的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • 一篇文章带你深入了解Java基础(3)

    一篇文章带你深入了解Java基础(3)

    这篇文章主要给大家介绍了关于Java中方法使用的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-08-08
  • Java实现统计文件夹下所有文件的字数

    Java实现统计文件夹下所有文件的字数

    这篇文章主要为大家详细介绍了如何使用Java实现统计文件夹下所有文件的字数,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-03-03

最新评论