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绑定参数关系

后续不断更新。。。。

相关推荐
毕设源码-钟学长2 小时前
【开题答辩全过程】以 基于Springboot的扶贫众筹平台为例,包含答辩的问题和答案
java·spring boot·后端
Java水解3 小时前
Spring Boot 4 升级指南:告别RestTemplate,拥抱现代HTTP客户端
spring boot·后端
神云瑟瑟3 小时前
spring boot拦截器获取requestBody的最佳实践
spring boot·拦截器·requestbody
暮色妖娆丶3 小时前
Spring 源码分析 BeanFactoryPostProcessor
spring boot·spring·源码
南极企鹅4 小时前
springBoot项目有几个端口
java·spring boot·后端
胖咕噜的稞达鸭4 小时前
网络基础:初识TCP/IP协议
网络·网络协议·tcp/ip
全栈工程师修炼指南4 小时前
Nginx | stream content 阶段:UDP 协议四层反向代理浅析与实践
运维·网络·网络协议·nginx·udp
忧郁的Mr.Li5 小时前
SpringBoot中实现多数据源配置
java·spring boot·后端
cur1es5 小时前
【UDP的报文结构】
网络·网络协议·udp·md5
闲人编程5 小时前
使用FastAPI和WebSocket构建高性能实时聊天系统
websocket·网络协议·网络编程·fastapi·持久化·实时聊天·codecapsule