首页 > 基础资料 博客日记

springboot接收参数的几种方式

2023-11-08 17:58:26基础资料围观188

这篇文章介绍了springboot接收参数的几种方式,分享给大家做个参考,收藏Java资料网收获更多编程知识

1、四种传参方式

1.1、params

  • 传参格式:?号传参,在地址栏上加参数
http://localhost:8080?参数名=值&参数名=值

1.2、body

  • 传参格式:请求体传参
http://localhost:8080/core/books

form-data的请求是在body中,为key=value格式,同时可以传文件,Content-Type为multipart/form-data,后端可以用@RequestParam接收。

1.3、json

json传参也是在body当中,只不过json是一种数据格式,后端可以用@RequestBody接收。

1.4、地址栏

地址栏传参,直接通过/在地址上拼接参数值,这种方式不需要在地址栏上写参数名,后端只需要知道他在地址的哪个位置传的参数就可以拿到值

2、springboot接收参数的几种方式

2.1、@RequestParam

  • 作用:将指定的请求参数赋值给方法中的形参

  • 接收形式: 一般用于Get请求

  • 属性:

    • value:绑定请求的参数名,默认绑定为同名的形参
    • required:是否必填,默认是true,表示请求中一定要有相应的参数,否则将报400
    • defaultValue:设置默认值,表示如果请求中没有接收到值时的默认值
  • 参数映射:默认是以变量名作为前端传参名称,但是假如我们注解设置了名称,那么参数名称以注解当中的属性为准,如果前端传test而不是test1就会报异常

  • 示例:

@GetMapping("/test")
public String test(@RequestParam("test1") String test) {
    return msg;
}
  • 总结:?号传参 的方式,传单个参数的时候使用;如果传实体类或多个参数时, 可以不加@RequstParm注解;如果加上@RequstParm注解就意味着前端必须传值,因为 required属性代表的是否是必填,默认为true;

2.2、@PathVariable

  • 作用:接收请求路径中占位符的值
  • 接收形式: 一般用于Get请求
  • 示例:
@GetMapping("/getInfo/{id}")
    public void getInfo(@PathVariable Long id) {
         return lxxBooksService.selectLxxBooksById(id);
    } 
  • 总结:@PathVariable 用于绑定 url 中的占位符,如果不设置属性值,默认参数名称和占位符当中的名称一致,如果不一致就会报错;一旦设置属性值,就要和占位符当中的名称一致

2.3、@RequestBody

  • 作用: 接收前端传递的json对象的字符串
  • 接收形式: 一般用于Post请求
  • 示例:
@PostMapping("/add")
    public void add(@RequestBody LxxBooks lxxBooks){
       return lxxBooksService.insertLxxBooks(lxxBooks);
    }
  • 总结:一般被用来接收body中json数据,get、post都可以使用。一般用于post。required默认为true,代表必须传参,否则报错400,允许个别属性不传

文章来源:https://blog.csdn.net/m0_56877068/article/details/128497824
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!

标签:

相关文章

本站推荐

标签云