Postman传递@requestbody标注的List集合的传参遇到的问题

news2024/11/19 18:34:10

Postman传递@requestbody标注的List集合的传参遇到的问题

  • 引子
  • 如何测试以及遇到的问题
  • 参考文献

引子

我们想测试如下接口

@RequestMapping(value ="saveMessageRecover", method = RequestMethod.POST)
@ResponseBody
public AjaxMessage saveMessageRecover(@RequestBody List<Device> deviceList,
                                      @RequestParam("eventId") Long eventId,
                                      @RequestParam("tagValue") String tagValue) {
    System.out.println(deviceList.toString());
    return emergencyDeviceRecoverService.saveMessageRecover(deviceList, eventId, tagValue);

}

如何测试以及遇到的问题

@RequestMapping(value ="saveMessageRecover", method = RequestMethod.POST)
@ResponseBody
public AjaxMessage save(@RequestBody List<Device> deviceList,
                                      @RequestParam("eventId") Long eventId,
                                      @RequestParam("tagValue") String tagValue) {
    return emergencyDeviceRecoverService.saveMessageRecover(list, eventId, tagValue);

}

在这里插入图片描述

这里对应了三个传入参数,因为deviceList是必须的,Device作为我们自己封装的JavaBean,我们想要直接传参的话,前端传递一个List过来,这个是被@Requestbody修饰的,同时还存在两个由@RequestParam修饰的包装类,因此,

@RequestBody主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的);而最常用的使用请求体传参的无疑是POST请求了,所以使用@RequestBody接收数据时,一般都用POST方式进行提交。在后端的同一个接收方法里,@RequestBody与@RequestParam()可以同时使用,@RequestBody最多只能有一个,而@RequestParam()可以有多个。

  1. 为什么要使用@RequestBody,直接传不行吗?

    当前端传来的是一个完整对象的时候,而且是以 json格式传输,只有加上注解@RequestBody,Spring 才会自动将 JSON 类型数据与我们的类进行匹配

  2. 返回给前端的是否为JSON类型?

使用@RestController注解或者@Controller+@Responbody注解

  1. postman如何传入list类型的参数?

在这里插入图片描述

我们遇到的问题?

  • 一开始总是使用大括号包围这个Bean,实际上传入一个list不需要如此。
  • 不确定如何传入一个@RequestBody和多个@RequestParam时,如何使用postman测试

如果想直接传一个list的对象集合,则不需要大括号;

如果是

public JSONObject updateProductStatus(@RequestParam(value = "ids",required = false) List<Integer> ids){

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参考文献

  • postman入门学习
    链接: postman入门学习

  • SpringMVC参数绑定学习总结【前后端数据参数传递】
    链接: SpringMVC

  • @RequestBody的使用
    链接: RequestBody

  • @RequestBody和@RequestParam区别全面详细
    链接: RequestParam

  • Postman测试接口传入List类型的参数以及数组类型参数
    链接: Postman

  • 前后端交互--------后端传JSON给前端
    链接: JSON

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/562717.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

聚观早报 |必应成为中国第一大桌面搜索引擎;快手上市后首次盈利

今日要闻&#xff1a;必应成为中国第一大桌面搜索引擎&#xff1b;快手上市后集团层面首次盈利&#xff1b;ChatGPT相关诈骗攻击与日俱增&#xff1b;比亚迪回应法国建厂传闻&#xff1b;薇娅夫妇半年收获两家上市公司 必应成为中国第一大桌面搜索引擎 5 月 22 日消息&#xf…

媒体专访|美创胡大海:国内数据安全市场正处于战略机遇期

引言 &#xff1a;我国在《“十四五”数字经济发展规划》中强调深化应用、规范发展、普惠共享&#xff0c;更多强调了数据资源为关键要素的重要性&#xff0c;并呼应了数据要素正式被纳入生产要素的政策&#xff0c;着重提出了数字经济具有“融合应用”和“全要素数字化转型”的…

断言无忧!接口自动化框架封装,Mysql数据库断言

目录 前言&#xff1a; 一、项目背景 二、框架封装 1. Mysql数据库连接 2. 查询功能 3. 断言功能 4. 使用示例 三、总结 前言&#xff1a; 随着互联网行业的迅猛发展&#xff0c;接口自动化测试在软件开发过程中扮演着越来越重要的角色。而在进行接口测试的过程中&…

初学UE5,UE4的教程适用UE5吗?

在UE5出版后&#xff0c;很多人问UE4还要不要学、UE4适不适用于UE5等问题。 UE5是最近推出的一款游戏引擎&#xff0c;相较于UE4而言&#xff0c;它有着更好的性能和灵活的工作流程&#xff0c;同时也引入了一些新的功能。对于一些游戏开发初学者来说&#xff0c;他们可能会想…

Flask restful分页接口实现

1.先定义一个工作信息表: 指定一些相关的字段:工作名称、年限、级别等 class Work(db.Model):__tablename__ = workid = db.Column(db.Integer, primary_key=True)workName = db.Column(db.String(5),nullable=False)year = db.Column(db.String(20), nullable=False)level = …

加密与解密 调试篇 动态调试技术 (二)

我们在 (一)中调试了一个程序 接着我们开始继续学习 常见的断点 这里有 INT 3断点 硬件断点 内存断点 消息断点等 1.INT 3 断点 我们在OllyDbg中 可以使用 命令 bp 或者 F12进行断点 INT3断点 就是在程序中 对该位置的代码 进行替换 替换为INT3 INT3 是一个软中断指令…

ChatGPT:你真的了解网络安全吗?浅谈网络安全攻击防御进行时之网络安全新定义

ChatGPT&#xff1a;你真的了解网络安全吗&#xff1f;浅谈网络安全攻击防御进行时 网络安全新定义 ChatGPT&#xff08;全名&#xff1a;Chat Generative Pre-trained Transformer&#xff09;&#xff0c;美国OpenAI 研发的聊天机器人程序&#xff0c;是人工智能技术驱动的自…

如何利用ChatGPT在工作中提高生产力?

[请微信搜索“云智AI助手”、“云智博瑞”关注我们 │ 谢谢支持 ] Cloud wisdom, AI assistant 每次人工智能成为头条新闻&#xff0c;都会引发对它是否会让人类失业的讨论。尽管某些工作可能会变得多余&#xff0c;我们应该学会与人工智能共同工作&#xff0c;将其作为增强自…

Python统计学13——回归的多重共线性、异方差、自相关的检验

在基础统计学&#xff0c;或者是计量经济学里面&#xff0c;需要对回归问题进行一些违背经典假设的检验&#xff0c;例如多重共线性、异方差、自相关的检验。这些检验用stata&#xff0c;r&#xff0c;Eviews什么都很简单&#xff0c;但是用python很多人都不会。下面就带大家实…

2023.5.14Ubuntu忘记MySQL密码

如果您忘记了MySQL的密码&#xff0c;可以按照以下步骤重置MySQL的密码&#xff1a; 停止MySQL服务&#xff1a; sudo service mysql stop启动MySQL服务&#xff0c;并跳过授权表&#xff1a; sudo mysqld_safe --skip-grant-tables &使用MySQL客户端连接到MySQL&#x…

【搭建轻量级图床】本地搭建LightPicture开源图床管理系统 - 异地远程访问

文章目录 1.前言2. Lightpicture网站搭建2.1. Lightpicture下载和安装2.2. Lightpicture网页测试2.3.cpolar的安装和注册 3.本地网页发布3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1.前言 现在的手机越来越先进&#xff0c;功能也越来越多&#xff0c;而手机…

吃鸡史:傻鸡是怎么进化并“称霸”世界的?

鸡&#xff0c;给我们的印象是温顺的&#xff1a;温顺地长大&#xff0c;温顺地下蛋&#xff0c;温顺地进油锅… 若是鸡祖宗们知道&#xff0c;有一天它们的鸡子鸡孙会进化成一群不会飞、只知道吃的傻鸡&#xff0c;几千年前的红原鸡骨怕是都要惊得飞出土了&#xff01; 毕竟…

day17 回话跟踪技术Cookie与Session

会话跟踪技术 问题:一次会话中的多次请求不会共享数据,不能显示.若通过传参数在路径上来解决该问题,不安全. 作用:解决HTTP无状态 http,cookie,session使用的区别 如果使用http中的request.setAttribute(),只能一次共享一个 若使用cookie,cookie存在浏览器中,每一次请求都…

JAVA——类间双向关联关系的实现-Contact与Phone类(电话簿管理系统)

首先&#xff1a;确定代码雏形框架&#xff08;原始代码&#xff09; 先根据以往经验写出一般的电话簿管理系统&#xff0c;先把代码雏形框架确定好。 原始代码运行结果&#xff1a; 原始代码源码&#xff1a; package bidirectionalDome;import java.util.ArrayList;public…

前端基础面试题八股文

html语义化的理解 代码结构: 使页面在没有css的情况下,也能够呈现出好的内容结构 有利于SEO: 爬虫根据标签来分配关键字的权重,因此可以和搜索引擎建立良好的沟通,帮助爬虫抓取更多的有效信息 方便其他设备解析&#xff1a; 如屏幕阅读器、盲人阅读器、移动设备等&#xff0c…

【敬伟ps教程】自由变换

文章目录 自由变换 自由变换 变换可以针对整个图层(组或链接图层)&#xff0c;或者选区内 基本操作 编辑–自由变换&#xff08;CtrilT&#xff09;&#xff1b; 自由变换的控件框来控制变换的效果&#xff1b; 自由变换是独立进行操作的模式&#xff0c;操作结束后需要点击确…

nginx -- 基本操作命令

修改nginx 配置&#xff0c;重新启动nginx流程,先进入到nginx目录 查看nginx状态 ps -ef | grep nginx 修改完/conf/nginx.conf 配置文件后保存 检查配置文件是否正确 ./sbin/nginx -t 检查文件配置正常 关闭nginx ./sbin/nginx -s quit 启动nginx ./sbin/nginx 完成

无线AP中小型、大型两种常见组网方式

无线AP&#xff08;Access Point&#xff09;网络覆盖是现代无线网络中的重要组成部分。它提供了无线信号的传输和接收功能&#xff0c;使用户能够在无线网络中进行通信和访问互联网。针对不同的需求和场景&#xff0c;存在两种常见的无线AP网络覆盖组网方式&#xff1a;中小型…

IMX6ULL平台的I2C

IMX6ULL平台的I2C 文章目录 IMX6ULL平台的I2C概述模式和操作 外部信号时钟功能描述I2C系统配置仲裁程序时钟同步信号交换外围总线访问复位中断字节顺序 初始化初始化序列启动的生成传输后软件响应停止的生成重复启动的生成从模式仲裁失败软件限制 I2C内存映射/寄存器定义I2C地址…

三维医学图像处理系统(PACS)源码

三维医学图像处理系统&#xff08;PACS&#xff09;源码 系统概述&#xff1a; 它集影像存储服务器、影像诊断工作站及RIS报告系统于一身,主要有图像处理模块、影像数据管理模块、RIS报告模块、光盘存档模块、DICOM通讯模块、胶片打印输出等模块组成&#xff0c; 具有完善的影…