springboot请求参数解析

@PathVariable

get和post皆可,用来获取路径中的参数,必须带上@PathVariable

 @RequestMapping("/test/{id}")
 public String test(@PathVariable Integer id)
 {
 	return Integer.toString(id);
 }

如果参数名字不一样,加上参数@PathVariable(value = “idd”)

 @RequestMapping("/test/{idd}")
 public String test(@PathVariable(value="idd") Integer id)
 {
 	return Integer.toString(id);
 }

@RequestParam

这也是默认的请求方式,

如果写了@RequestParam,则必须传对应的对象

如果没写@RequestParam,就会自由很多,前端只用传username,就会自动放入到user.username

@GetMapping("/selectAll")
public Result selectAll(User user) {  //如果前端传参数username,它会自动加入user
    List<User> list = userService.selectAll(user);
    return Result.success(list);
}

这也是post表单的请求方式

get和post皆可RequestParam都行

@RequestMapping("/test")
public String test(@RequestParam(value = "idd", required = false)  Integer id)
{
    return Integer.toString(id);
}

除了 value 属性外,还有个两个属性比较常用:
required 属性:true 表示该参数必须要传,否则就会报 404 错误,false 表示可有可无。
defaultValue 属性:默认值,表示如果请求中没有同名参数时的默认值。

区别

主要区别在于:

@PathValiable 是从 url 模板中获取参数值, 即这种风格的 url: http://localhost:8080/user/{id} ; @RequestParam 是从 request 里面获取参数值,即这种风格的ur:lhttp://localhost:8080/user?id=1

@RequestBody

get和post皆可

用于接收前端传来的实体,接收参数也是对应的实体

@RequestMapping("/test")
public HashMap test(@RequestBody HashMap<String,String>mp)
{
    return mp;
}

相关推荐

  1. springboot请求参数

    2024-05-13 10:20:06       31 阅读
  2. Spring Mvc请求处理过程分析 --- 参数

    2024-05-13 10:20:06       52 阅读
  3. NestJs实现各种请求参数

    2024-05-13 10:20:06       30 阅读
  4. curl_opt参数

    2024-05-13 10:20:06       28 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-13 10:20:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-13 10:20:06       101 阅读
  3. 在Django里面运行非项目文件

    2024-05-13 10:20:06       82 阅读
  4. Python语言-面向对象

    2024-05-13 10:20:06       91 阅读

热门阅读

  1. 学习TypeScript(二)

    2024-05-13 10:20:06       36 阅读
  2. 设计模式之工厂模式

    2024-05-13 10:20:06       27 阅读
  3. docker 资源限制

    2024-05-13 10:20:06       28 阅读
  4. macOS 如何使用Visual Studio Code 编译C++

    2024-05-13 10:20:06       32 阅读
  5. Python爬虫-批量爬取新能源汽车上牌量

    2024-05-13 10:20:06       30 阅读
  6. Rust错误处理:`foo(...)?`的用法与错误类型转换

    2024-05-13 10:20:06       42 阅读
  7. Linux笔记

    2024-05-13 10:20:06       28 阅读
  8. centos7下用logrotate给tomcat的catalina.out做日志分割

    2024-05-13 10:20:06       33 阅读
  9. websocket和http协议的区别

    2024-05-13 10:20:06       37 阅读