SpringBoot Controller接收参数的几种常用方式

目录

请求路径参数

Body参数

@RequestBody

无注解

请求头参数以及Cookie


请求路径参数

  • @PathVariable

获取路径参数。即url/{id}这种形式。

  • @RequestParam

获取查询参数。即url?name=这种形式

例子:

@GetMapping("/demo/{id}")
public String demo(@PathVariable(name = "id") String id, @RequestParam(name = "name") String name) {
    return "PathVariable="+id+"  RequestParam="+name;
}

测试:

Body参数

  • @RequestBody

@PostMapping("/user1")
public String demo1(@RequestBody User user) {
    return user.toString();
}

或者

 @PostMapping(path = "/user2")
    public Object demo1(@RequestBody Map<String, String> user) {
       return user;
    }

无注解

代码

 @PostMapping("/user3")
    public String demo3(User user) {
        return user.toString();
    }

请求头参数以及Cookie

  • 1、@RequestHeader
  • 2、@CookieValue

@GetMapping("/demo1")
    public String demo3(@RequestHeader(name = "myHeader") String myHeader/*,
                      @CookieValue(name = "myCookie") String myCookie*/) {

        return "myHeader=" + myHeader;
    }

或者

@GetMapping("/demo2")
public void demo3(HttpServletRequest request) {
  System.out.println(request.getHeader("myHeader"));
  for (Cookie cookie : request.getCookies()) {
    if ("myCookie".equals(cookie.getName())) {
      System.out.println(cookie.getValue());
    }
  }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值