Spring Boot中接收各种各样的参数

一、接收json参数,封装为Map

1.1、核心代码

/**
 * 接收json参数,封装为Map
 * @param servletRequest
 * @return
 * @throws Exception
 */
@PostMapping("/getParam")
public R getParam(HttpServletRequest servletRequest) throws Exception {
	Map<String,Object> result = new ObjectMapper().readValue(servletRequest.getInputStream(), Map.class);
	log.info("MapController getParam result:{}", JSON.toJSONString(result));

	return R.ok().data(result);
}

1.2、Postman中传参

1.3、响应结果

1.4、后台日志记录

二、GET请求

2.1、接收GET请求方式的传参:第一种方式

2.1.1、核心代码

/**
 * 接收GET请求方式的传参:第一种方式
 *
 * @param username 用户名
 * @param password 密码
 * @return
 */
@GetMapping("/getParam1/{username}/{password}")
public R getParam1(@PathVariable String username, @PathVariable String password) {
	log.info("GETController getParam1 param username:{},password:{}", username, password);
	User8043VO user8043VO = new User8043VO(username, password);

	return R.ok().data(user8043VO);
}

2.1.2、Postman中传参 & 响应结果

2.2、接收GET请求方式的传参:第二种方式

2.2.1、核心代码

/**
 * 接收GET请求方式的传参:第二种方式
 *
 * @param username 用户名
 * @param password 密码
 * @return
 */
@GetMapping("/getParam2")
public R getParam2(@RequestParam("username") String username,
				   @RequestParam("password") String password) {
	log.info("GETController getParam2 param username:{},password:{}", username, password);
	User8043VO user8043VO = new User8043VO(username, password);

	return R.ok().data(user8043VO);
}

2.2.2、Postman中传参 & 响应结果

2.3、接收GET请求方式的传参:第三种方式

2.3.1、核心代码

/**
 * 接收GET请求方式的传参:第三种方式
 *
 * @param id 编号
 * @param username 用户名
 * @param password 密码
 * @return
 */
@GetMapping("/getParam3/{id}")
public R getParam3(@PathVariable Long id,
				   @RequestParam("username") String username,
				   @RequestParam("password") String password) {
	log.info("GETController getParam3 param id:{},username:{},password:{}", id, username, password);
	User8043VO user8043VO = new User8043VO(id, username, password);

	return R.ok().data(user8043VO);
}

2.3.2、Postman中传参 & 响应结果

2.4、接收GET请求方式的传参:第四种方式

2.4.1、核心代码

/**
 * 接收GET请求方式的传参:第四种方式
 * @param request
 * @return
 */
@GetMapping("/getParam4")
public R getParam4(HttpServletRequest request) {
	String id = request.getParameter("id");
	String username = request.getParameter("username");
	String password = request.getParameter("password");
	log.info("GETController getParam4 param id:{},username:{},password:{}", id, username, password);

	User8043VO user8043VO = new User8043VO(Long.parseLong(id), username, password);

	return R.ok().data(user8043VO);
}

2.4.2、Postman中传参 & 响应结果

三、POST请求 

3.1、接收POST请求方式的传参:第一种方式

3.1.1、核心代码

/**
 * 接收POST请求方式的传参:第一种方式
 *
 * @param username 用户名
 * @param password 密码
 * @return
 */
@PostMapping("/postParam1/{username}/{password}")
public R postParam1(@PathVariable String username, @PathVariable String password) {
	log.info("POSTController postParam1 param username:{},password:{}", username, password);
	User8043VO user8043VO = new User8043VO(username, password);

	return R.ok().data(user8043VO);
}

3.1.2、Postman中传参 & 响应结果

3.2、接收POST请求方式的传参:第二种方式

3.2.1、核心代码

/**
 * 接收POST请求方式的传参:第二种方式
 *
 * @param username 用户名
 * @param password 密码
 * @return
 */
@PostMapping("/postParam2")
public R postParam2(@RequestParam("username") String username,
					@RequestParam("password") String password) {
	log.info("POSTController postParam2 param username:{},password:{}", username, password);
	User8043VO user8043VO = new User8043VO(username, password);

	return R.ok().data(user8043VO);
}

3.2.2、Postman中传参 & 响应结果

3.3、接收POST请求方式的传参:第三种方式

3.3.1、核心代码

/**
 * 接收POST请求方式的传参:第三种方式
 *
 * @param id 编号
 * @param username 用户名
 * @param password 密码
 * @return
 */
@PostMapping("/postParam3/{id}")
public R postParam3(@PathVariable Long id,
					@RequestParam("username") String username,
					@RequestParam("password") String password) {
	log.info("POSTController postParam3 param id:{}, username:{},password:{}", id, username, password);
	User8043VO user8043VO = new User8043VO(id, username, password);

	return R.ok().data(user8043VO);
}

3.3.2、Postman中传参 & 响应结果

3.4、接收POST请求方式的传参:第四种方式

3.4.1、核心代码

/**
 * 接收POST请求方式的传参:第四种方式
 *
 * @param request
 * @return
 */
@PostMapping("/postParam4")
public R postParam4(HttpServletRequest request) {
	String id = request.getParameter("id");
	String username = request.getParameter("username");
	String password = request.getParameter("password");

	log.info("POSTController postParam4 param id:{}, username:{},password:{}", id, username, password);

	User8043VO user8043VO = new User8043VO(Long.parseLong(id), username, password);

	return R.ok().data(user8043VO);
}

3.4.2、Postman中传参 & 响应结果

3.5、接收POST请求方式的传参:第五种方式

3.5.1、核心代码

/**
 * 接收POST请求方式的传参:第五种方式
 *
 * @param param
 * @return
 */
@PostMapping("/postParam5")
public R postParam5(@RequestBody User8043VO param) {
	log.info("POSTController postParam5 param:{}", JSON.toJSONString(param));

	return R.ok().data(param);
}

3.5.2、Postman中传参 & 响应结果

3.6、接收POST请求方式的传参:第六种方式

3.6.1、核心代码

/**
 * 接收POST请求方式的传参:第六种方式
 *
 * @param param
 * @return
 */
@PostMapping("/postParam6")
public R postParam6(User8043VO param) {
	log.info("POSTController postParam6 param:{}", param);

	return R.ok().data(param);
}

3.6.2、Postman中传参 & 响应结果

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

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

相关文章

Linux 认识与学习Bash——2

1 read 从键盘读取变量的值 read 后面不带变量&#xff0c;那么默认会给REPLY变量赋值 #!/bin/bash echo -n "请输入你的名字&#xff1a;" read name echo "欢迎您 $name" echo "----------------"echo -n "请输入你的名字2&#xff1a;&q…

VR全景:为户外游玩体验插上科技翅膀

随着VR全景技术的愈发成熟&#xff0c;无数人感到惊艳&#xff0c;也让各行各业看到了一片光明的发展前景。尤其是越来越多的文旅景区开始引入VR全景技术&#xff0c;相较于以往的静态风景图&#xff0c;显然现在的VR全景结合了动态图像和声音更加吸引人。 VR全景技术正在逐步改…

肿瘤相关成纤维细胞分型及单细胞深入研究(文献)

目录 ①六种癌症类型共有的CAF亚型&#xff08;pan-CAFs&#xff09; 1&#xff0c;六种泛CAF亚型的鉴定和分子表征 2&#xff0c;Pan-CAF亚型特异性转录因子和基因调控网络 3&#xff0c;预后分析 4&#xff0c;Pan-CAF亚型与肿瘤中特定分子功能的关联 ②泛癌单细胞转录…

【论文精读】Bag of Tricks for Image Classification with Convolutional Neural Networks

这篇文章比较早了&#xff0c;2018年的 摘要 最近在图像分类研究方面取得的大部分进展可以归功于训练程序的改进&#xff0c;如数据增强和优化方法的改变。然而&#xff0c;在文献中&#xff0c;大多数改进要么作为实现细节简要提到&#xff0c;要么只在源代码中可见。在本文中…

kafka实验部署

一、前期准备 二、kafka实验 在zookeeper后继续进行操作 2.1 为ndoe1、node2、node3作出部署 2.1.1 解压kafka压缩包&#xff08;node1举例&#xff09; 2.1.2 操作 将解压后的kafka移动到kafka&#xff0c;进入到kafka下的config中&#xff0c;复制文件 2.1.2.1 编辑server.pr…

C语言语法进阶

条件运算符 条件运算符是 C 语言中唯一的一种三目运算符。三目运算符代表有三个操作数&#xff1b;双目 运算符代表有两个操作数&#xff0c;如逻辑与运算符就是双目运算符&#xff1b;单目运算符代表有一个操作数&#xff0c; 如逻辑非运算符就是单目运算符。运算符也称操作符…

Elasticsearch:(二)2.安装kibana

1.环境安装介绍: 安装java环境安装Elasticsearch安装kibana安装Elasticsearch-head插件 本节文章主要讲解kibana的安装。 2.下载 下载Elasticsearch对应的版本,参考官方自身产品兼容版本:支持一览表 | Elastic 下载地址:Kibana 7.17.20 | Elastic Kibana 7.17.20 | Ela…

Linux之C编程入门

目录 第1关&#xff1a;第一个C程序 任务描述 相关知识 编译C程序 编程要求 答案及其步骤&#xff1a; 第2关&#xff1a;Linux编译C程序 任务描述 相关知识 gcc编译器使用方法 编程要求 答案及其步骤&#xff1a; 第3关&#xff1a;Linux之静态库编写 任务描述 相关知识 生成…

el-menu 有一级二级三级菜单

效果如下 菜单代码如下 <el-menu:default-active"menuDefaultActive"class"el-menu-box":text-color"menuTextColor":active-text-color"menuActiveTextColor":unique-opened"true"><!-- 一级菜单 --><tem…

常见排序算法(插入排序,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序,计数排序,基数排序,桶排序)

一.排序的概念 1.排序&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递减的排列起来的操作 2.稳定性&#xff1a;假定在待排序的记录序列中&#xff0c;存在多个具有相同的关键字的记录&#xff0c;若经过排…

STM32 HAL库 利用CH376进行USB文件读写

STM32 其实可以进行读取USB文件,但仅限于F4以上芯片才可以进行SUB文件读写,但在项目开发中,往往用不到此芯片,那么只能通过外挂的USB芯片进行USB文件读写,本文则是采用STM32F103的SPI与CH376进行通信,通过CH376操作指令进行操作。 1、CH376介绍 CH376芯片 是沁恒的一款文…

paho-mqtt 库揭秘

文章目录 **paho-mqtt 库揭秘**第一部分&#xff1a;背景介绍第二部分&#xff1a;paho-mqtt 是什么&#xff1f;第三部分&#xff1a;如何安装这个库&#xff1f;第四部分&#xff1a;库函数使用方法第五部分&#xff1a;场景应用第六部分&#xff1a;常见Bug及解决方案第七部…

如何批量给Word文件增加前缀序号?“汇帮批量重命名”帮助你批量给word文件增加前缀序号。

批量给Word文件增加前缀序号的过程&#xff0c;对于经常处理大量文档的人来说&#xff0c;是一项既繁琐又必要的任务。首先&#xff0c;我们需要明确为什么要给Word文件增加前缀序号。在很多情况下&#xff0c;当我们需要按照一定的顺序对多个文档进行管理和归档时&#xff0c;…

海绵结构:Hash as RO

参考文献&#xff1a; [BDPA07] Bertoni G, Daemen J, Peeters M, et al. Sponge functions[C]//ECRYPT hash workshop. 2007, 2007(9).[GPP11] Guo J, Peyrin T, Poschmann A. The PHOTON family of lightweight hash functions[C]//Advances in Cryptology–CRYPTO 2011: 31…

MBD_入门篇_19_Simulink数学运算模块

19.Simulink数学运算模块 19.1 概述 数学运算模块&#xff0c;包含了一些数学运算&#xff0c;比如最常用的加减乘除等。 19.2 Add加法模块 设置加法模块的形状&#xff0c;默认是方形的&#xff0c;推荐使用方形的。 运算符设置。 设置符号为-&#xff0c;可以理解为本来是0,…

CSS 设置空格原样显示 white-space:pre-wrap;

CSS 设置空格原样显示 问题描述 html 渲染内容时&#xff0c;对于 空格、回车、Tab 键的 默认处理方式是 &#xff1a; 无论存在多少个连续的空格&#xff0c;都只会保留一个。 结论 由于以上的特性&#xff0c;导致了我们无法直接渲染出原格式的文本。pre 标签 了解一下 &…

今日刷三题(day4):简写单词+dd爱框框+除2!

题目一&#xff1a;简写单词 题目描述&#xff1a; 比如 “College English Test”可以简写成“CET”&#xff0c;“Computer Science”可以简写为“CS”&#xff0c;“I am Bob”简写为“IAB” 输入输出描述&#xff1a; 输入&#xff1a;一个复合单词 输出&#xff1a;输…

20240330-1-词嵌入模型w2v+tf-idf

Word2Vector 1.什么是词嵌入模型&#xff1f; 把词映射为实数域向量的技术也叫词嵌⼊ 2.介绍一下Word2Vec 谷歌2013年提出的Word2Vec是目前最常用的词嵌入模型之一。Word2Vec实际是一种浅层的神经网络模型&#xff0c;它有两种网络结构&#xff0c;分别是连续词袋&#xff…

C++ stl容器stack,queue,priority_queue的底层模拟实现

目录 前言&#xff1a; 文档借鉴&#xff1a;Reference - C Reference 1.deque a.deque的结构特点&#xff1a; b.deque的迭代器结构&#xff1a; c.面试题&#xff1a; 2.stack 3.queue 4.仿函数 5.priority_queue 总结&#xff1a; 前言&#xff1a; 本篇一共简单…

Hive 中常用的函数以及数据类型

数据类型 1.基本数据类型: 数据类型大小范围示例TINYINT1byte-128 ~ 127100YSMALLINT2byte-32768 ~ 32767100SINT4byte-2^32~ 2^32-1100BIGINT8byte-2^64~ 2^64-1100LFLOAT4byte单精度浮点数5.21DOUBLE8byte双精度浮点数5.21DECIMAL-高精度浮点数DECIMAL(9,8)BOOLEAN-布尔型tr…