用Java语言创建的Spring Boot项目中,如何传递List集合呢?

前言:

在上篇文章中,用Java语言创建的Spring Boot项目中,如何传递数组呢??-CSDN博客,我们了解到Spring Boot项目中如何传递数组,但是,对于同类型的List集合,我们又该如何传递呢??

同样道理,作为后端开发人员,不需要知道前端如何传递给我们List集合,我们只需要去处理即可,其他的一切交给Postman!

根据在Spring Boot项目中传递数组的代码,我们自信满满的写出Spring Boot项目中传递List集合的代码,如下所示:

复制代码
@RestController
@RequestMapping("/param")
public class ParamController {

//传入数组
    @RequestMapping("/m5")
    public String m5(String[] array){
        return "传入的数组数据为: "+ Arrays.toString(array) + "数组的长度length为: "+ array.length;
    }

//传入List集合(错误代码)
    @RequestMapping("/m6")
    public String m6(List<String> listParam){
        return "传入的list数据为: "+ listParam.toString() + "list的长度length为: "+ listParam.size();
    }

}

问题:

但是,当我们在浏览器输入:localhost:8080/param/m6?listParam=zhangsan&listParam=lisi&listParam=wangwu

满满的一脸无辜,竟然报错了,不服气的我,再次使用Postman来进行测试:

同样也是满屏的报错!!

但是,突然间发现,错误竟然是500,那么,我们回归Idea的日志进行查看:

简而言之,你写的代码不对!!

解决方案:

当我们在其参数前面加入注解:@RequestParam,便可以正常了!!

复制代码
    @RequestMapping("/m6")
    public String m6(@RequestParam List<String> listParam){
        return "传入的list数据为: "+ listParam.toString() + "list的长度length为: "+ listParam.size();
    }

Postman中的测试为:http://localhost:8080/param/m6?listParam=zhangsan&listParam=lisi&listParam=wangwu

在浏览器中的测试为:

相关推荐
2201_7578308728 分钟前
全局异常处理器
java
知远同学2 小时前
Anaconda的安装使用(为python管理虚拟环境)
开发语言·python
小徐Chao努力2 小时前
【Langchain4j-Java AI开发】09-Agent智能体工作流
java·开发语言·人工智能
CoderCodingNo2 小时前
【GESP】C++五级真题(贪心和剪枝思想) luogu-B3930 [GESP202312 五级] 烹饪问题
开发语言·c++·剪枝
Coder_Boy_2 小时前
SpringAI与LangChain4j的智能应用-(理论篇2)
人工智能·spring boot·langchain·springai
Coder_Boy_2 小时前
SpringAI与LangChain4j的智能应用-(理论篇3)
java·人工智能·spring boot·langchain
kylezhao20192 小时前
第1章:第一节 开发环境搭建(工控场景最优配置)
开发语言·c#
啃火龙果的兔子2 小时前
JavaScript 中的 Symbol 特性详解
开发语言·javascript·ecmascript
Coder_Boy_2 小时前
基于SpringAI的智能平台基座开发-(六)
java·数据库·人工智能·spring·langchain·langchain4j
热爱专研AI的学妹3 小时前
数眼搜索API与博查技术特性深度对比:实时性与数据完整性的核心差异
大数据·开发语言·数据库·人工智能·python