日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

java后台@RequestBody和@RequestParam

發(fā)布時間:2023/12/13 综合教程 35 生活家
生活随笔 收集整理的這篇文章主要介紹了 java后台@RequestBody和@RequestParam 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

RequestBody 接收的是請求體里面(body)的數據

RequestParam接收的是key-value里面的參數,所以它會被切割進行處理從而可以是普通元素、數組、集合、對象等接收

get---》@RequestParam(),不能用@RequestBody

post---》@RequestParam() & @RequestBody

@RequestBody主要用來接收前端傳遞給后端的json字符串中的數據的(請求體中的數據的);

在后端的同一個接收方法里,@RequestBody與@RequestParam()可以同時使用,@RequestBody最多只能有一個,而@RequestParam()可以有多個。

即:如果參數時放在請求體中,application/json傳入后臺的話,那么后臺要用@RequestBody才能接收到;
如果不是放在請求體中的話,那么后臺接收前臺傳過來的參數時,要用@RequestParam來接收,或者形參前什么也不寫也能接收。

注:如果參數前寫了@RequestParam(xxx),那么前端必須有對應的xxx名字才行,如果沒有xxx名的話,那么請求會出錯,報400。

注:如果參數前不寫@RequestParam(xxx)的話,那么就前端可以有,也可以沒有對應的xxx名字,如果有xxx名的話,那么就會自動匹配;沒有的話,請求也能正確發(fā)送。

示例1

@AutoLog(value = "運維工程師-分頁列表查詢")
    @GetMapping(value = "/list")
    public Result<?> queryPageList(OperatStaff operatStaff,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        QueryWrapper<OperatStaff> queryWrapper = QueryGenerator.initQueryWrapper(operatStaff, req.getParameterMap());
        Page<OperatStaff> page = new Page<OperatStaff>(pageNo, pageSize);
        IPage<OperatStaff> pageList = operatStaffService.page(page, queryWrapper);
        return Result.ok(pageList);
    }

示例2

@AutoLog(value = "運維合約管理-添加")
    @ApiOperation(value="運維合約管理-添加", notes="運維合約管理-添加")
    @PostMapping(value = "/add")
    public Result<?> add(@RequestBody OperatContract[] operatContracts) {
        for(OperatContract operatContract:operatContracts)
        {
            operatContractService.save(operatContract);
        }

        return Result.ok("添加成功!");
    }

示例3

@AutoLog(value = "運維合約管理-通過id刪除")
    @ApiOperation(value="運維合約管理-通過id刪除", notes="運維合約管理-通過id刪除")
    @DeleteMapping(value = "/delete")
    public Result<?> delete(@RequestParam(name="id",required=true) String id) {
        operatContractService.removeById(id);
        return Result.ok("刪除成功!");
    }

示例4

@PostMapping(value = "/sms")
    public Result<String> sms(@RequestBody JSONObject jsonObject) {
        Result<String> result = new Result<String>();
        String mobile = jsonObject.get("mobile").toString();
        String smsmode=jsonObject.get("smsmode").toString();
        log.info(mobile);    
        Object object = redisUtil.get(mobile);
        if (object != null) {
            result.setMessage("驗證碼10分鐘內,仍然有效!");
            result.setSuccess(false);
            return result;
        }

https://blog.csdn.net/justry_deng/article/details/80972817/

總結

以上是生活随笔為你收集整理的java后台@RequestBody和@RequestParam的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。