最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot如何接收get和post請(qǐng)求參數(shù)

 更新時(shí)間:2023年06月28日 10:16:03   作者:Archie_java  
這篇文章主要介紹了springboot如何接收get和post請(qǐng)求參數(shù),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、get請(qǐng)求前端傳參和后臺(tái)接收的寫法:

1、ajax請(qǐng)求:

 $.ajax({                
     	url:'/user/login3',
        //contentType: 'application/json;charset=utf-8', //這一句添加與否,效果都一樣
     	data:{"userName":"張三", "userPass":"123"},
     	method:'get',       
     	dataType:'json',                
     	success:function(res){    
     		if(res.successful == true || res.successful=='true'){      
     			alert("ok");   
     		}else{
     			alert("用戶名或密碼錯(cuò)誤");            
     		}
     	},                
     	error:function (data) {
     		alert("用戶名或密碼錯(cuò)誤");            
     	}            
     });

此時(shí)查看瀏覽器的network選項(xiàng),會(huì)看到請(qǐng)求地址變成:

? Request URL:http://localhost:8082/user/login3?userName=%E5%BC%A0%E4%B8%89&userPass=123

即請(qǐng)求參數(shù)拼接到url地址欄后,并且已經(jīng)編碼了。

2、針對(duì)這種請(qǐng)求,后臺(tái)接收參數(shù)有三種寫法:

1)、參數(shù)名稱與前端key對(duì)應(yīng),不加任何注解:

@RequestMapping(value = "/login3", method = RequestMethod.GET)
	Map<String, Object> login4( String userName,  String userPass)

2)、參數(shù)名稱與前端key對(duì)應(yīng),添加@RequestParam注解:

@RequestMapping(value = "/login3", method = RequestMethod.GET)
	Map<String, Object> login2(@RequestParam String userName, @RequestParam String userPass) 

3)、使用@RequestParam注解,將所有的參數(shù)封裝到Map<String,Object>對(duì)象:

@RequestMapping(value = "/login3", method = RequestMethod.GET)
	Map<String, Object> login3(@RequestParam Map<String,Object> param)

此時(shí),后臺(tái)通過(guò)param.get(“userName”)來(lái)獲取參數(shù)的值。@RequestParam注解換成@RequestBody注解無(wú)效,ajax請(qǐng)求報(bào)400錯(cuò)誤,進(jìn)入不了后臺(tái)對(duì)應(yīng)的方法。

二、post請(qǐng)求前端傳參和后臺(tái)接收的寫法:

? 3、ajax請(qǐng)求:

 $.ajax({                
     	url:'/user/login3',
     	data:{"userName":"張三", "userPass":"123"},
     	method:'post',       
     	dataType:'json',                
     	success:function(res){    
     		if(res.successful == true || res.successful=='true'){      
     			alert("ok");   
     		}else{
     			alert("用戶名或密碼錯(cuò)誤");            
     		}
     	},                
     	error:function (data) {
     		alert("用戶名或密碼錯(cuò)誤");            
     	}            
     });

4、針對(duì)3的ajax請(qǐng)求,后臺(tái)的接口參數(shù)寫法同2。

5、ajax請(qǐng)求:

$.ajax({                
     	url:'/user/login3',
     	contentType: 'application/json;charset=utf-8',
     	data:JSON.stringify({"userName":"張三", "userPass":"123"}),
     	method:'post',       
     	dataType:'json',   

不同的地方在于添加了contentType,data需要改成序列化的json字符串。

6、針對(duì)5這種ajax請(qǐng)求,2的三種寫法后臺(tái)都拿不到值,或者直接報(bào)400錯(cuò)誤。需要用另外一種寫法:

@RequestMapping(value = "/login3", method = RequestMethod.POST)
	Map<String, Object> login3(@RequestBody Map<String,Object> param) {
		try {
			System.out.println("userName==" + param.get("userName") +", userPass==" + param.get("userPass"));

? 這里的param名稱可以隨便取,可以用別的名稱代替;Map<String,Object>也可以替換成自定義的POJO類名,比如自定了User類,包含了userName和userPass兩個(gè)屬性,則@RequestBody User user也可以去到前端傳遞的值,此時(shí)用user.getUserName()就可以了。

或者:

@RequestMapping(value = "/login2", method = RequestMethod.POST)
	Map<String, Object> login2(@RequestBody String userInfo) {
		try {
			JSONObject json = JSONObject.parseObject(userInfo);
			System.out.println("userName==" + json.getString("userName") +", userPass==" + json.getString("userPass"));

這里的userInfo名稱是隨便取,可以用別的名稱代替;把這里的@RequestBody替換成@RequestParam,會(huì)報(bào)400錯(cuò)誤。

到此這篇關(guān)于springboot接收get和post請(qǐng)求參數(shù)的文章就介紹到這了,更多相關(guān)springboot接收get和post參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用GenericObjectPool避免泄漏設(shè)置方法

    使用GenericObjectPool避免泄漏設(shè)置方法

    這篇文章主要為大家介紹了使用GenericObjectPool避免泄漏的設(shè)置方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • SpringBoot+MyBatisPlus對(duì)Map中Date格式轉(zhuǎn)換處理的方法詳解

    SpringBoot+MyBatisPlus對(duì)Map中Date格式轉(zhuǎn)換處理的方法詳解

    在?SpringBoot?項(xiàng)目中,?如何統(tǒng)一?JSON?格式化中的日期格式。本文將為大家介紹一種方法:利用MyBatisPlus實(shí)現(xiàn)對(duì)Map中Date格式轉(zhuǎn)換處理,需要的可以參考一下
    2022-10-10
  • SpringBoot @Retryable注解方式

    SpringBoot @Retryable注解方式

    這篇文章主要介紹了SpringBoot @Retryable注解方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • Java純代碼實(shí)現(xiàn)導(dǎo)出PDF功能

    Java純代碼實(shí)現(xiàn)導(dǎo)出PDF功能

    在項(xiàng)目開(kāi)發(fā)中,產(chǎn)品的需求越來(lái)越奇葩啦,開(kāi)始文件下載都是下載為excel的,做著做著需求竟然變了,要求能導(dǎo)出pdf,本文就來(lái)和大家分享一下Java實(shí)現(xiàn)導(dǎo)出PDF的常用方法吧
    2023-07-07
  • Java JVM運(yùn)行時(shí)數(shù)據(jù)區(qū)(Run-Time Data Areas)

    Java JVM運(yùn)行時(shí)數(shù)據(jù)區(qū)(Run-Time Data Areas)

    運(yùn)行時(shí)數(shù)據(jù)區(qū),是java虛擬機(jī)定義的在程序執(zhí)行期間使用的各種運(yùn)行時(shí)的數(shù)據(jù)區(qū),通過(guò)JVM運(yùn)行時(shí)數(shù)據(jù)區(qū)圖例給大家展示的很詳細(xì),對(duì)JVM 運(yùn)行時(shí)數(shù)據(jù)區(qū)相關(guān)知識(shí)感興趣的朋友跟隨小編一起看看吧
    2021-06-06
  • SpringBean管理與Spring Boot自動(dòng)配置原理解析

    SpringBean管理與Spring Boot自動(dòng)配置原理解析

    在Spring中,Bean的作用域(Scope)決定了Bean的實(shí)例化方式以及其生命周期,下面給大家介紹SpringBean管理與Spring Boot自動(dòng)配置原理解析,感興趣的朋友一起看看吧
    2025-05-05
  • SpringMVC修改返回值類型后的消息轉(zhuǎn)換器處理方式

    SpringMVC修改返回值類型后的消息轉(zhuǎn)換器處理方式

    這篇文章主要介紹了SpringMVC修改返回值類型后的消息轉(zhuǎn)換器處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java中的IO讀寫原理詳解

    Java中的IO讀寫原理詳解

    這篇文章主要介紹了Java中的IO讀寫原理,IO是指輸入和輸出操作的技術(shù),它提供了一組用于讀取和寫入數(shù)據(jù)的類,以及用于處理字符和字節(jié)數(shù)據(jù)的接口,這些類和接口可以用于讀取和寫入文件、網(wǎng)絡(luò)流、內(nèi)存緩沖區(qū)等各種數(shù)據(jù)源和目標(biāo),需要的朋友可以參考下
    2023-08-08
  • Java?File類的概述及常用方法使用詳解

    Java?File類的概述及常用方法使用詳解

    Java?File類的功能非常強(qiáng)大,下面這篇文章主要給大家介紹了關(guān)于Java中File類的概述及常用方法使用,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • 在es中查詢null值的操作方法

    在es中查詢null值的操作方法

    在我們向es中寫入數(shù)據(jù)時(shí),有些時(shí)候數(shù)據(jù)寫入到es中的是null,或者沒(méi)有寫入這個(gè)字段,那么這個(gè)時(shí)候在es中該如何查詢出這種為null的數(shù)據(jù)呢,本文給大家詳細(xì)講解,需要的朋友參考下吧
    2023-02-02

最新評(píng)論

康马县| 辉南县| 龙里县| 镇原县| 蒲江县| 保定市| 宜兰县| 锦屏县| 沁阳市| 合水县| 收藏| 莱阳市| 西宁市| 长汀县| 瑞金市| 都兰县| 虹口区| 威信县| 衢州市| 枞阳县| 凤凰县| 吴旗县| 克东县| 五莲县| 金阳县| 巩义市| 临澧县| 山丹县| 阜康市| 舟山市| 科技| 大名县| 灌南县| 大兴区| 塔河县| 霍邱县| 桐庐县| 尼勒克县| 永丰县| 左云县| 龙门县|