http请求,结合springboot

目录

简单参数&实体参数

get请求

post请求

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

springboot中接受简单参数

@RequestParam注解

实体参数接收

数组集合参数 

数组接收

集合接收 

数组集合参数 【总结】 

日期参数请求

JSON参数请求

路径参数请求

所有请求参数类型总结

简单参数

实体参数

数组集合参数

日期参数

JSON参数

路径参数


简单参数&实体参数

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

日期参数请求

get请求的url

http://localhost:8080/dateParam?2024-04-28 12:10:30

接口:

@RequestMapping("/dateParam")

public String dateParam(@DateTimeFormat(pattern="yyy-MM-dd HH:mm:ss") LocalDateTime updateTime) {

        System.out.println(updateTime)

        return "OK";

}

//@DateTimeFormat注解:指定时间参数传递的格式

JSON参数请求

场景:我们发送一个请求,并且以json数据的格式请求,请求方式需要设置为POST请求,因为JSON数据是要放在请求体中,携带给服务器端的,接收json数据,一般通过实体对象进行接收。

JSON参数:JSON数据键名与形参对象属性名相同,定义实体类型形参即可接收参数,需要使用@RequestBody标识(作用:将JSON请求格式的数据封装到实体对象中)

请求的json数据:

{     

        "name":"TOM",

        "age":10,

        "address":"江苏"

}

接口:

@RequestMapping("/jsonParam")

public String dateParam(@RequestBody User user) {

        System.out.println(user)

        return "OK";

}

@RequestBody标识(作用:将JSON请求格式的数据封装到实体对象中)

路径参数请求

路径参数:通过请求URL直接传递参数,使用{xxx}来标识该路径参数,需要使用@PathVariable获取参数;

 @PathVariable注解:将获取的路径参数,绑定给方法的形参

get请求url

http://localhost:8080/path/1

接口:

@RequestMapping("/path/{id}")

public String dateParam(@PathVariable Integer id) {

        System.out.println(id)

        return "OK";

}

//路径参数也可以接收多个,声明多个形参即可

所有请求参数类型总结

简单参数

定义方法形参,请求参数名与形参变量名一致

若是不一致:通过@RequestParam注解手动映射

实体参数

请求参数名,与实体对象的属性名一致,会自定接收封装

数组集合参数

数组:请求参数名与数组名一致,直接封装

集合:请求参数名与集合名一致,@RequestParam绑定关系

日期参数

@DateTimeFormat注解:给定请求日期的格式

JSON参数

@RequestBody注解:将请求的json格式的数据直接映射到实体对象上

路径参数

@PathVariable注解:请求的参数是在路径上携带的,可以通过该注解获取

  • 25
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值