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

后续不断更新。。。。

相关推荐
拾光拾趣录5 分钟前
无状态协议下的用户状态管理:Web应用如何保持用户登录态
前端·http·https
摘星编程30 分钟前
深入理解责任链模式:从HTTP中间件到异常处理的实战应用
http·设计模式·中间件·责任链模式·实战应用
海外空间恒创科技1 小时前
一台香港原生ip站群服务器多少钱?
服务器·网络协议·tcp/ip
RainbowSea2 小时前
跨域问题(Allow CORS)解决(3 种方法)
java·spring boot·后端
RainbowSea2 小时前
问题 1:MyBatis-plus-3.5.9 的分页功能修复
java·spring boot·mybatis
DemonAvenger2 小时前
TCP连接池设计与实现:提升Go应用网络性能
网络协议·架构·go
sniper_fandc4 小时前
SpringBoot系列—入门
java·spring boot·后端
游戏开发爱好者88 小时前
iOS重构期调试实战:架构升级中的性能与数据保障策略
websocket·网络协议·tcp/ip·http·网络安全·https·udp
Albert Edison9 小时前
【最新版】IntelliJ IDEA 2025 创建 SpringBoot 项目
java·spring boot·intellij-idea
六毛的毛12 小时前
Springboot开发常见注解一览
java·spring boot·后端