Stackoverflow(1)-根据RequestBody的内容来区分使用哪个资源

  • 如果使用Spring,可以通过@RequestBody将请求体的json转换为Java对象,但如果URI相同,而请求体的内容不同,应该怎么办?
  • 问题来源(stackoverflow):
  • Spring @RequestBody without using a pojo?
  • 稍微研究了一下,如果将@RequestBody指定为Map,那么请求体(键、值)会存储到Map对象中
  • 案例:
  • 发送POST请求,虽然URI相同,但是请求体却不同
  • 不过,携带了一个名为type的共同数据,并通过type的值来判别不同的情况
  • 这次准备了两个type的值:concert和trip

  • 控制器的实现:
  • 在控制器的实现中,指定 @RequestBody 为 Map<String, Object> 类型
  • 通过指定 Map,可以将请求体以键值对的形式存储

  • 查看 type 键的值,以此判断是哪一种类型的请求,并将请求转换为相应的类
  • 在转换过程中使用了 Jackson 的 ObjectMapper 类进行转换
  • 这里,我们将其转换为相应类的对象,输出到标准输出并结束

  • 尝试发送 concert 的请求

  • 结果的标准输出

  • 尝试发送 trip 的请求

  • 结果的标准输出

  • 所以正确地将其转换为对应的类是可能的
  • 整体代码:

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

手把手一起开发SV4E-I3C设备(三)

JEDEC DDR5 SPD Hub Devices例程 为进一步方便程序开发&#xff0c;使用vscode开发程序&#xff0c;IntrospectESP_23.3.0软件调用运行&#xff0c;如图所示&#xff0c;双击UTILITY区域的PythonModule&#xff0c;自动生成一个py文件&#xff0c;可以给该模块重命名。例如重命…

重学Java 16.面向对象.4.对象数组

一、对象数组 1.需求&#xff1a;定义一个长度为3的数组&#xff0c;存储3个person对象&#xff0c;遍历数组&#xff0c;将三个person对象中的属性值获取出来 public class Person {private String name;private int age;public Person(String name,int age) {this.name name…

Yii2项目使用composer异常记录

问题描述 在yii2项目中&#xff0c;使用require命令安装依赖时&#xff0c;出现如下错误提示 该提示意思是&#xff1a;composer运行时&#xff0c;执行了yiisoft/yii2-composer目录下的插件&#xff0c;但是该插件使用的API版本是1.0&#xff0c;但是当前的cmposer版本提供的…

单体工程结构

本文主要说明下单体项目的工程结构如何设计&#xff0c;目前业界存在两种主流的应用工程结构&#xff1a;一种是阿里推出的《Java开发手册》中推荐的&#xff0c;另外一种是基于DDD(领域驱动设计)推荐的。下面我们来看下两种工程结构是怎样的。 一、 基于阿里《Java开发手册》…

生成式 AI - Diffusion 模型的数学原理(3)

来自 论文《 Denoising Diffusion Probabilistic Model》&#xff08;DDPM&#xff09; 论文链接&#xff1a; https://arxiv.org/abs/2006.11239 Hung-yi Lee 课件整理 文章目录 一、图像生成模型本质上的共同目标二、最大似然估计三、和VAE的关联四、概率计算 一、图像生成模…

三维模型优化与可视化开发者服务

一站式服务开发者 1、极速流畅的浏览体验 无需安装插件&#xff0c;实现模型多端展示 最大支持100G模型&#xff0c;杜绝花、卡、闪 2、丰富易用的开发工具 无需掌握图形技术&#xff0c;实现模型轻量化和3D交互展示 提供丰富的SDK和API&#xff0c;简洁易用 老子云API 提供…

Java+SpringBoot:高校竞赛管理新篇章

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

添加环境变量

目录 一、前言二、目的三、添加环境变量的步骤四、检查环境变量是否配置成功 一、前言 在很多地方在下载完软件后都需要添加环境变量方可使用。这里以要在终端使用MySQL为例来说一下&#xff0c;在安装好MySQL8.0版本的前提下&#xff0c;如何添加环境变量。 二、目的 添加环…

力扣OJ题——旋转数组

题目&#xff1a;189.旋转数组 给定一个整数数组 nums&#xff0c;将数组中的元素向右轮转 k 个位置&#xff0c;其中 k 是非负数 思路一&#xff1a; 1.每次挪动旋转1位&#xff08;用tmp将最后一位存起来&#xff0c;其余所有数据向后移&#xff0c;然后将tmp放在第一个位…

单源最短路径(Dijkstra)

前言 dijkstra&#xff1a;对于无负边的情况下可以达到O(nlogn)且很难被卡 最短路 - OI Wiki (oi-wiki.org) P3371 【模板】单源最短路径&#xff08;弱化版&#xff09; P3371 【模板】单源最短路径&#xff08;弱化版&#xff09; - 洛谷 | 计算机科学教育新生态 (luogu.com…

2.18学习总结

链式前向星的处理和建立 tarjan对割点和缩点的使用 拓扑排序 链式前向星&#xff1a; 预处理&#xff1a; struct edge{int from;int to;int next; }e[N]; int n,m,head[N],dfn[N],low[N],tot,color[N],num[N],out[N],s,instack[N],id; 处理&#xff1a; void add(int …

svg之全局组件,配合雪碧图解决vue2的svg优化问题

这里是vue2中的svg的完整解决方案的另一篇。 <template><svg :class"svgClass"><use :xlink:href"#${name}"></use></svg> </template><script>export default {name: icon,props: {name: {type: String,requi…

lv15 input子系统框架、外设驱动开发 5

一、input子系统基本框架 在我们日常的Linux系统中&#xff0c;存在大量的输入设备&#xff0c;例如按键、鼠标、键盘、触摸屏、摇杆等&#xff0c;他们本身就是字符设备&#xff0c;linux内核将这些字符设备的共同性抽象出来&#xff0c;简化驱动开发建立了一个input子系统。 …

关于Spring Boot应用系统避免因为日切(日期切换)导致请求结果变更的一种解决方案

一、前言 在系统开发过程中&#xff0c;有些业务功能面临日切&#xff08;日期切换&#xff09;问题&#xff0c;比如结息跑批问题&#xff0c;在当前工作日临近24点的时候触发结息&#xff0c;实际交易时间我们预期的是当前时间&#xff0c;但是由于业务执行耗时&#xff0c;…

【EI会议征稿通知】第五届城市工程与管理科学国际会议(ICUEMS 2024)

【Scopus稳定检索】第五届城市工程与管理科学国际会议&#xff08;ICUEMS 2024&#xff09; 2024 5th International Conference on Urban Engineering and Management Science 第五届城市工程与管理科学国际会议&#xff08;ICUEMS 2024&#xff09;将于2024年5月31日-6月2日…

告警能力中台设计与实践(三)——告警通知

一、告警消息与告警通知 1、告警消息 正如笔者在最开始所写的那样&#xff0c;第三方服务通过调用能力中台的OpenAPI实现告警发起&#xff0c;并且每一次的告警请求都会创建、归档为一条告警消息&#xff08;AlarmMsg&#xff09;。 这样的消息是无状态的&#xff0c;并且对…

Python:变量与数据类型

目录 一、变量 1.1 强数据类型与弱数据类型 1.2 全局函数 1.3 变量的命名规范 二、数据类型 2.1 基本数据类型 2.2 复合数据类型&#xff08;引用数据类型&#xff09; 三、数据类型转换 一、变量 变量&#xff1a;顾名思义&#xff0c;变化的量。在python中代指运行时…

【Java面试】MongoDB

目录 1、mongodb是什么&#xff1f;2、mongodb特点什么是NoSQL数据库&#xff1f;NoSQL和RDBMS有什么区别&#xff1f;在哪些情况下使用和不使用NoSQL数据库&#xff1f;NoSQL数据库有哪些类型?启用备份故障恢复需要多久什么是master或primary什么是secondary或slave系列文章版…

【Redis篇】详解布隆过滤器(原理 | 操作 | 代码)

文章目录 &#x1f354;简述布隆过滤器&#x1f33a;原理&#x1f6f8;存入过程&#x1f6f8;查询过程 &#x1f3f3;️‍&#x1f308;优缺点⭐优点⭐缺点 &#x1f339;代码实现&#xff08;本地&#xff09;&#x1f339;代码实现&#xff08;分布式&#xff09; &#x1f3…

Redis 集群(Cluster)

集群概念 Redis 的哨兵模式&#xff0c;提高了系统的可用性&#xff0c;但是正在用来存储数据的还是 master 和 slave 节点&#xff0c;所有的数据都需要存储在单个 master 和 salve 节点中。 如果数据量很大&#xff0c;接近超出了 master / slave 所在机器的物理内存&#…