JavaWeb_请求响应_简单参数&实体参数

一、SpringBoot方式接收携带简单参数的请求

简单参数:参数名与形参变量名相同,定义形参即可接收参数。并且在接收过程中,会进行自动的类型转换。

启动应用程序后,在postman中进行测试:

请求成功,响应回了OK.并且后端也有对应的打印结果:

如果方法形参名称与请求参数名称不匹配,可以使用@RequestParam完成映射。如图

这里方法形参名为username,而请求参数名为name,通过@RequestParam将name映射到username,使得username能够接收到请求参数name的值。

注意:@RequestParam中的required属性默认为true,代表该请求参数必须传递,如果不传递将会报。如果该参数是可选的,可以将required属性设置为false。如图

二、SpringBoot方式接收实体参数的请求

如果前端传递20几个简单参数,如果还用前面的方式进行接收,就会显得繁琐,而且不便于后期的维护。

解决方案:我们可以把所有的请求参数都封装到一个实体类中。

简单实体对象:请求的参数名与形参对象属性名相同,定义POJO接收即可。

复杂实体对象:请求参数名与形参对象属性名相同,按照对象层次结构关系即可接收嵌套POJO属性参数。

要想成功封装,需要保持一个原则:请求的参数名与实体类的属性名保持一致。

举例说明:比如我要将请求参数name和age封装到User实体类中,则User类应该如下定义:

前端请求地址:

后端定义的User类:

后端接收前端请求的controller:

打印的结果:

相关推荐
Gofarlic_oms14 小时前
利用API实现ANSYS许可证管理自动化集成
运维·服务器·开发语言·matlab·自动化·负载均衡
AI+程序员在路上5 小时前
VS Code 完全使用指南:下载、安装、核心功能与 内置AI 编程助手实战
开发语言·人工智能·windows·开源
invicinble5 小时前
这里对java的知识体系做一个全域的介绍
java·开发语言·python
catchadmin6 小时前
使用 PHP TrueAsync 改造 Laravel 协程异步化的可行路径
开发语言·php·laravel
wbs_scy6 小时前
【Linux 线程进阶】进程 vs 线程资源划分 + 线程控制全详解
java·开发语言
ss2736 小时前
食谱推荐系统功能测试如何写?
java·数据库·spring boot·功能测试
2301_811274316 小时前
基于SpringBoot的智能家居管理系统
spring boot·后端·智能家居
毕设源码_古学姐6 小时前
计算机毕业设计springboot智能家居项目管理系统 基于SpringBoot的智能家居项目管理平台设计与实现 SpringBoot技术驱动的智能家居项目管理系统开发
spring boot·智能家居·课程设计
毕设源码-张学姐6 小时前
计算机毕业设计springboot智能家居设备信息管理系统 基于SpringBoot的智能家居设备全生命周期管理平台 面向智慧家庭的SpringBoot设备资产与场景运营系统
spring boot·智能家居·课程设计
AI人工智能+电脑小能手6 小时前
【大白话说Java面试题】【Java基础篇】第15题:JDK1.7中HashMap扩容为什么会发生死循环?如何解决
java·开发语言·数据结构·后端·面试·哈希算法