springboot接收前端参数的集中重要方法

本文说明

  • 该内容如果有错误,可以指出共同探讨

  • 以下代码只是简单的说明代码

  • 表单格式:form-data、x-www-form-urlencoded

  • 非表单格式:json、xml、html、text等

1.HttpServletRequest

范围:

  • get请求可以使用
  • 表单格式的post请求,非表单格式的post请求不可以用

使用方法:

public String sendSms(HttpServletRequest req){
    //Key是你post表单或者get请求中的key
    System.out.println(req.getParameter("key"));
    return req.getParameter("key");
}

2.在方法体中直接写参数

范围:

  • get请求可以使用
  • 表单格式的post请求,非表单格式的post请求不可以用

使用方法:

public String sendSms(String key){
    //Key是你post表单或者get请求中的key
    System.out.println(key);
    return key;
}

3.@RequestParam

范围:

  • get请求可以使用
  • 表单格式的post请求,非表单格式的post请求不可以用
  • 当请求体的参数名字和接收参数的形参名字不一样的时可以使用

缺点:在你请求中的参数没有该参数会报错,为防止报错,需要设置 required = false。也可以为没有该参数使设上默认属性defaultValue = “你要设置的默认值”。

使用方法:

public String sendSms(@RequestParam(value = "key",required = false,defaultValue = "1") String key){
    System.out.println(key);
    return  key;
}

4.用bean来接收参数

范围:

  • get请求可以使用
  • 表单格式的post请求(非表单格式的post请求请看第5条**)**

使用方法:

public String sendSms(User user){
    //user属性的字段需要和请求中的参数名字一样,这样对应的字段才会获取到值
    System.out.println(user.toString);
    return user.toString;
}

5. @RequestBody

作用:当post提交的数据不是表单格式可以用@RequestBody来解析你的参数。比如:json、xml格式可以使用这个注解。

范围:

  • 表单格式和非表单格式的post请求都可以用,但是会把表单格式的数据当做非表单格式来处理。

使用方法:

@PostMapping("/sendsms")
public String sendSms(@RequestBody User user){
    System.out.println(user);
    return user.toString();
}

6.@PathVariable

主要用来接收请求的url的参数,用法如下

@DeleteMapping("/{deleteId}")
public AjaxResult deleteRiskOneResource(@PathVariable("deleteId") Integer deleteId){
       riskStandardMapper.deleteById(deleteId);
        AjaxResult ajax = AjaxResult.success();
        return ajax;
    }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值