http请求与响应,结合springboot

目录

简单参数&实体参数

get请求

post请求

简单参数&实体参数【总结】

springboot中接受简单参数

@RequestParam注解

实体参数接收

数组集合参数

数组接收

集合接收

[数组集合参数 【总结】](#数组集合参数 【总结】)


简单参数&实体参数

get请求

请求url:

http://localhost:8080/simpleParam?name=Tom\&age=10

代码:

1、如果方法形参名称与请求参数名称匹配,可以直接完成映射,使用以下代码即可(推荐:利于统一)

@RequestMapping("/simpleParam")

public String simpleParam(String name,Integer age) {

System.out.println(name+":"+age)

return "OK";

}

2、如果方法形参名称与请求参数名称不匹配,可以使用@RequestParam完成映射(不推荐,不利于统一)

RequestParam注解:

name:属性用于别名处理,将请求的携带name的信息映射到username;

required:定义这个参数是否必须通过请求携带,若是为true,请求时不携带,则报错。

@RequestMapping("/simpleParam")

public String simpleParam(@RequestParam(name="name") String username,Integer age) {

System.out.println(name+":"+age)

return "OK";

}

请求输出结果

Tom:10

post请求

请求url:

http://localhost:8080/simpleParam

//表单中携带参数

简单参数&实体参数【总结】

springboot中接受简单参数

请求参数名与方法形参变量名相同

会自动进行类型转换

@RequestParam注解

方法形参名与请求参数名称不匹配,通过该注解完成映射

该注解的required属性默认是true,代表请求参数必须传递

实体参数接收

适用场景:一般用于传的参数较多,请求参数名也必须和实体中的变量名一致,可以定义一个实体类进行接收,其中实体类,可以继续嵌套实体

实体类

@Data

public class User {

public String name;

public Integer age;

}

接口

@RequestMapping("/simpleParam")

public String simpleParam(User user) {

System.out.println(user)

return "OK";

}

数组集合参数

适用场景:复选框提交数据

get请求的url

http://localhost:8080/arrayParam?hobby=game\&hobby=java\&hobby=sing

数组接收

接口:

@RequestMapping("/arrayParam")

public String simpleParam(String [] hobby) {

System.out.println(Arrays.toString(hobby))

return "OK";

}

集合接收

接口:

@RequestMapping("/list")

public String simpleParam(@RequestParam List<String> hobby) {

System.out.println(Arrays.toString(hobby))

return "OK";

}

//@RequestParam:加这个注解才可以将多个请求参数封装到List集合中

数组集合参数 【总结】

数据:请求形参名与形参中数组变量名相同,可以直接使用参数封装

集合:请求参数名与形参中集合变量名相同,可以通过@RequestParam绑定参数关系

后续不断更新。。。。

相关推荐
Moshow郑锴4 小时前
实战分享:用 SpringBoot-API-Scheduler 构建 API 监控闭环 —— 从断言验证到智能警报
java·spring boot·后端·任务调度
我有一棵树4 小时前
file 协议与 http 协议的区别:为什么本地 HTML 无法加载相对路径 JS,以及正确的解决方式
javascript·http·html
1***t8275 小时前
将 vue3 项目打包后部署在 springboot 项目运行
java·spring boot·后端
N***H4866 小时前
使用Springboot实现MQTT通信
java·spring boot·后端
W***95247 小时前
在Spring Boot项目中使用MySQL数据库
数据库·spring boot·mysql
Q_Q5110082858 小时前
python+django/flask的情绪宣泄系统
spring boot·python·pycharm·django·flask·node.js·php
7***47719 小时前
在2023idea中如何创建SpringBoot
java·spring boot·后端
L***d67010 小时前
十七:Spring Boot依赖 (2)-- spring-boot-starter-web 依赖详解
前端·spring boot·后端
q***385111 小时前
SpringBoot + vue 管理系统
vue.js·spring boot·后端
vx_vxbs6611 小时前
【SSM电动车智能充电服务平台】(免费领源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案
java·spring boot·mysql·spring cloud·小程序·php·idea