? ? 之前在面試題中看到這樣的一個(gè)問(wèn)題拾枣,SpringMVC有哪幾種接收前端請(qǐng)求數(shù)據(jù)的方式?當(dāng)時(shí)腦子里第一種反應(yīng)就是HttpServletRequest,后面的卻是答不出來(lái)了嫉戚,后面看了看資料動(dòng)手寫(xiě)了一個(gè)demo,總結(jié)一下這幾種方式澈圈,如果有哪里總結(jié)的不對(duì)還請(qǐng)指正彬檀。
? ? ? 為了方便,這里選用的是SpringBoot瞬女,將從搭建框架一步步講解一下窍帝。
首先創(chuàng)建一個(gè)項(xiàng)目,我們選擇在線(xiàn)安裝诽偷,輸入Spring地址:https://start.spring.io/坤学,然后就可以一直選下一步了
因?yàn)槲覄?chuàng)建的是一個(gè)web項(xiàng)目,所以我們這里把web下面的web勾選上报慕,這樣就可以了深浮。
好了,項(xiàng)目創(chuàng)建完成了眠冈,我們開(kāi)始編輯代碼飞苇。首先我們需要在pom.xml添加頁(yè)面視圖元素,添加如下代碼:
然后我們開(kāi)始畫(huà)一個(gè)簡(jiǎn)單的登錄界面洋闽,我們?cè)趕tatic文件夾下新建一個(gè)login.html的文件玄柠,可以直接訪(fǎng)問(wèn)
寫(xiě)一個(gè)簡(jiǎn)單的form表單作為登錄:
<form action="login.do">
? ? 用戶(hù)名:<input type="text" name="name"/>
? ? 密碼:<input type="password" name="password"/>
? ? <input type="submit" value="登陸">
</form>
下面我們?cè)赿emo下面新建一個(gè)測(cè)試文件編寫(xiě)我們的測(cè)試代碼:
第一種方式:通過(guò)Httprequest來(lái)獲取前端請(qǐng)求數(shù)據(jù),這也是最常見(jiàn)的一種方式了
現(xiàn)在我們?cè)L問(wèn)測(cè)試一下诫舅,在瀏覽器輸入:http://localhost:8080/login.html羽利,輸入我們的用戶(hù)名跟密碼點(diǎn)擊登錄:
然后我們?cè)倏匆幌驴刂婆_(tái)的輸出跟我們界面的輸入對(duì)不對(duì)
我們界面的輸入跟控制臺(tái)的輸出是一致的,說(shuō)明這種獲取方式是可行的刊懈。
第二種方式:直接獲取
現(xiàn)在我們?cè)L問(wèn)測(cè)試一下这弧,在瀏覽器輸入:http://localhost:8080/login.html,輸入我們的用戶(hù)名跟密碼點(diǎn)擊登錄
然后我們?cè)倏匆幌驴刂婆_(tái)的輸出跟我們界面的輸入對(duì)不對(duì)
我們界面的輸入跟控制臺(tái)的輸出是一致的虚汛,說(shuō)明這種獲取方式是可行的匾浪。
第三種:通過(guò)@RequestParam注解來(lái)綁定頁(yè)面參數(shù)獲取
注意:@RequestParam注解括號(hào)里的值一定要與頁(yè)面元素的name、password屬性的值保持一致而userName卷哩、passWord則相當(dāng)于取了個(gè)別名蛋辈。
現(xiàn)在我們?cè)L問(wèn)測(cè)試一下,在瀏覽器輸入:http://localhost:8080/login.html,輸入我們的用戶(hù)名跟密碼點(diǎn)擊登錄:
然后我們?cè)倏匆幌驴刂婆_(tái)的輸出跟我們界面的輸入對(duì)不對(duì):
我們界面的輸入跟控制臺(tái)的輸出是一致的冷溶,說(shuō)明這種獲取方式是可行的渐白。
第四種:通過(guò)實(shí)體類(lèi)的get方法獲取
首先我們新建一個(gè)User的實(shí)體類(lèi),并添加set/get方法
注意:這里的屬性要與頁(yè)面元素的name屬性值保持一致逞频。
現(xiàn)在我們開(kāi)始編寫(xiě)測(cè)試代碼:
我們來(lái)做一下訪(fǎng)問(wèn)測(cè)試纯衍,在瀏覽器輸入:http://localhost:8080/login.html,輸入我們的用戶(hù)名跟密碼點(diǎn)擊登錄:
現(xiàn)在我們?cè)倏匆幌驴刂婆_(tái)的輸出跟我們界面的輸入對(duì)不對(duì):
我們界面的輸入跟控制臺(tái)的輸出是一致的苗胀,說(shuō)明這種獲取方式是可行的襟诸。
以上就是總結(jié)的SpringMVC獲取前端請(qǐng)求數(shù)據(jù)的四種方式了,如果有哪里總結(jié)的不對(duì)或者言辭有誤還請(qǐng)指正基协。