springboot接收前端參數(shù)的四種方式圖文詳解
前言
在開始之前,我們需要一下準(zhǔn)備工作,創(chuàng)建數(shù)據(jù)庫(kù),springboot工程,添加依賴,配置文件,使用的技術(shù)有mybatisplus,springboot,maven,mysql。
首先,數(shù)據(jù)庫(kù)建表

然后,建立一個(gè)springboot項(xiàng)目,導(dǎo)入相關(guān)依賴,編寫相關(guān)配置
其中,maven相關(guān)依賴

application.yml配置文件,我使用了mybatisplus,使用需要相關(guān)的依賴和配置

為了便于前后端交互,我使用了json進(jìn)行前后端數(shù)據(jù)傳遞,由Java后端進(jìn)行數(shù)據(jù)封裝

該項(xiàng)目包結(jié)構(gòu)如圖所示

好了,到這里準(zhǔn)備工作已經(jīng)基本完成,我們來(lái)探究后端如何接收前端給我們的參數(shù)
第一種:直接在方法中指定參數(shù)
我們?cè)赨serController中編寫一個(gè)方法,通過(guò)用戶名和密碼得到一個(gè)user對(duì)象

在接口中添加方法,在實(shí)現(xiàn)類中重寫

使用apifox進(jìn)行測(cè)試,可以看到我們已經(jīng)得到了返回結(jié)果

我們?cè)赨serController中使用了日志記錄了查詢過(guò)程,可以看到在控制臺(tái)輸出了username,說(shuō)明我們已經(jīng)得到了這個(gè)參數(shù),但是該方法有有幾個(gè)缺陷,一是我們?cè)赼pifox中body中參數(shù)要一一對(duì)應(yīng),username和password的位置不能錯(cuò),二是參數(shù)名稱必需一致,如果不同則不能接收到該參數(shù)。
那么顯然,這種接收參數(shù)的方法有很多缺陷,所以我們需要去改進(jìn)。
第二種:使用@requesrParam注解


該方法解決了第一種方法的缺點(diǎn),不需要參數(shù)一一對(duì)應(yīng),也不需要名稱一致,在注解里面,可以隨意填寫任意名稱,都可以對(duì)應(yīng)。
第三種方法:基于@pathVariable


我們只需要在請(qǐng)求路徑上添加參數(shù),但是注意,路徑上添加的參數(shù)需要用括號(hào)拼接,且和方法內(nèi)對(duì)應(yīng)的參數(shù)名稱要相同。
第四種方法:基于@ResquestBody
該注解使用頻率最高,可以將參數(shù)自動(dòng)封裝為一個(gè)對(duì)象

用@ResquestBody封裝的對(duì)象,我們可以完整的保留user對(duì)象中對(duì)應(yīng)的所有屬性,未賦值的屬性對(duì)應(yīng)為空,且可以通過(guò)set,get方法對(duì)對(duì)象進(jìn)行修改賦值和提取。
總結(jié)
到此這篇關(guān)于springboot接收前端參數(shù)的四種方式的文章就介紹到這了,更多相關(guān)springboot接收前端參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java利用Zxing生成二維碼的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇Java利用Zxing生成二維碼的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08
Java創(chuàng)建,編輯與刪除Excel迷你圖表的實(shí)現(xiàn)方法
迷你圖是Excel工作表單元格中表示數(shù)據(jù)的微型圖表。本文將通過(guò)Java代碼示例介紹如何在Excel中創(chuàng)建迷你圖表,以及編輯和刪除表格中的迷你圖表,需要的可以參考一下2022-05-05
幾種常見(jiàn)mybatis分頁(yè)實(shí)現(xiàn)方式
這篇文章主要介紹了幾種常見(jiàn)mybatis分頁(yè)實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
springboot對(duì)接微信支付的完整流程(附前后端代碼)
最近在做支付平臺(tái)的項(xiàng)目,承接公司業(yè)務(wù)系統(tǒng)與第三方支付平臺(tái)的對(duì)接任務(wù),主要涉及微信支付、支付寶支付以及理房通支付等第三方平臺(tái),這篇文章主要給大家介紹了關(guān)于springboot對(duì)接微信支付的完整流程,需要的朋友可以參考下2021-08-08

