亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

@PathVariable、@RequestParam和@RequestBody的區(qū)別

 更新時(shí)間:2023年05月17日 09:13:40   作者:bai_student  
本文主要介紹了@PathVariable、@RequestParam和@RequestBody的區(qū)別和使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1. @PathVariable

@RequestMapping(value="/{id}")
public String getId(@PathVariable(value="id") String id) {
    return id;
}

1.1 @PathVariable 映射 URL 綁定的占位符

  • 帶占位符的 URL 是 Spring3.0 新增的功能
  • 通過 @PathVariable 可以將 URL 中占位符參數(shù)綁定到控制器(controller)處理方法的形參中,URL 中的 {xx} 占位符可以通過@PathVariable(“xx“) 綁定到操作方法的形參中
  • 是根據(jù)請(qǐng)求方法進(jìn)行類的區(qū)別

1.2 @PathVariable的參數(shù)

  • String value:可指定占位符 { } 中的參數(shù)名,若只指定value這一個(gè)屬性可省略屬性名不寫,若占位符中的參數(shù)名和處理方法中的參數(shù)名相同可省略此屬性。
  • String name:和value一樣,兩個(gè)屬性指定其一即可。
  • boolean required:是否必需,默認(rèn)為 true,即 請(qǐng)求中必須包含該參數(shù),如果沒有包含,將會(huì)拋出異常

2. @RequestParam

@RequestMapping(value="/user")
public String getName(@RequestParam(value="name") String name) {
    return name;
}

在SpringMVC框架中,獲取URL中的參數(shù),也就是?key1=value1&key2=value2這樣的參數(shù)列表。通過注解@RequestParam將URL中的參數(shù)綁定到處理函數(shù)方法的變量中。

2.1 @RequestParam 用于將指定的請(qǐng)求參數(shù)賦值給方法中的形參

  • 如果參數(shù)前寫了@RequestParam(x),那么前端必須有對(duì)應(yīng)的x名字才行(不管其是否有值),如果沒有x名的話,那么請(qǐng)求會(huì)出錯(cuò)。
  • 如果參數(shù)前不寫@RequestParam(x),那么就前端可以有可以沒有對(duì)應(yīng)的x名字才行,如果有x名的話,那么就會(huì)自動(dòng)匹配;沒有的話,請(qǐng)求也能正確發(fā)送。

2.2 @RequestParam的參數(shù)

  • String value:請(qǐng)求中傳入?yún)?shù)的名稱,如果不設(shè)置value值,則會(huì)默認(rèn)為該變量名。
  • String name:和value一樣,兩個(gè)屬性指定其一即可。
  • boolean required:是否必需,默認(rèn)為 true,即 請(qǐng)求中必須包含該參數(shù),如果沒有包含,將會(huì)拋出異常
  • String defaultValue:參數(shù)的默認(rèn)值,如果請(qǐng)求中沒有同名的參數(shù)時(shí),該變量默認(rèn)為此值。

3. @RequestBody

    @PostMapping("/editUser")
    public void edit(@RequestBody User user){
        System.out.println(user);
    }

@RequestBody主要用來接收前端傳遞給后端的json字符串中的數(shù)據(jù)的(請(qǐng)求體中的數(shù)據(jù)的);使用@RequestBody接收數(shù)據(jù)時(shí),是用POST等方式進(jìn)行提交。

  • 后端@RequestBody注解對(duì)應(yīng)的類,會(huì)根據(jù)json字符串中的key來匹配對(duì)應(yīng)實(shí)體類的屬性,如果匹配一致且json中的該key對(duì)應(yīng)的值符合實(shí)體類的對(duì)應(yīng)屬性的類型要求時(shí),會(huì)調(diào)用實(shí)體類的setter方法將值賦給該屬性。
  • json字符串中,如果value為"“的話,后端對(duì)應(yīng)屬性如果是String類型的,那么接受到的就是”",如果是后端屬性的類型是Integer、Double等類型,那么接收到的就是null。
  • json字符串中,如果value為null的話,后端對(duì)應(yīng)收到的就是null。
  • 如果某個(gè)參數(shù)沒有value的話,在傳json字符串給后端時(shí),要么干脆就不把該字段寫到j(luò)son字符串中;要么寫value時(shí), 必須有值,null 或""都行。

到此這篇關(guān)于@PathVariable、@RequestParam和@RequestBody的區(qū)別和使用的文章就介紹到這了,更多相關(guān)@PathVariable @RequestParam @RequestBody內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java靜態(tài)代理的含義及用法

    java靜態(tài)代理的含義及用法

    在本篇文章里小編給大家整理的是一篇關(guān)于java靜態(tài)代理的含義及用法,有需要的朋友們可以跟著學(xué)習(xí)參考下。
    2021-06-06
  • Java抽獎(jiǎng)算法第二例

    Java抽獎(jiǎng)算法第二例

    這篇文章主要為大家詳細(xì)介紹了Java抽獎(jiǎng)算法,根據(jù)概率將獎(jiǎng)品劃分區(qū)間,每個(gè)區(qū)間代表一個(gè)獎(jiǎng)品,然后抽取隨機(jī)數(shù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • SpringBoot集成Mybatis過程步驟圖解

    SpringBoot集成Mybatis過程步驟圖解

    這篇文章主要介紹了SpringBoot集成Mybatis過程步驟圖解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Spring整合Quartz Job以及Spring Task的實(shí)現(xiàn)方法

    Spring整合Quartz Job以及Spring Task的實(shí)現(xiàn)方法

    下面小編就為大家分享一篇Spring整合Quartz Job以及Spring Task的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • 一文學(xué)透ApplicationContext繼承接口功能及與BeanFactory區(qū)別

    一文學(xué)透ApplicationContext繼承接口功能及與BeanFactory區(qū)別

    這篇文章主要為大家介紹了ApplicationContext繼承接口功能及與BeanFactory區(qū)別示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • RocketMQ的順序消費(fèi)機(jī)制詳解

    RocketMQ的順序消費(fèi)機(jī)制詳解

    這篇文章主要介紹了RocketMQ的順序消費(fèi)機(jī)制詳解,順序消息是指對(duì)于一個(gè)指定的?Topic?,消息嚴(yán)格按照先進(jìn)先出(FIFO)的原則進(jìn)行消息發(fā)布和消費(fèi),即先發(fā)布的消息先消費(fèi),后發(fā)布的消息后消費(fèi),,需要的朋友可以參考下
    2023-10-10
  • nacos在mac上部署提示找不到或無(wú)法加載主類的解決

    nacos在mac上部署提示找不到或無(wú)法加載主類的解決

    這篇文章主要介紹了nacos在mac上部署提示找不到或無(wú)法加載主類的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Java中的命名與目錄接口JNDI基本操作方法概覽

    Java中的命名與目錄接口JNDI基本操作方法概覽

    這篇文章主要介紹了Java中的命名與目錄接口JNDI基本操作方法概覽,JNDI提供統(tǒng)一的客戶端API使得Java應(yīng)用程序可以和這些命名服務(wù)和目錄服務(wù)之間進(jìn)行交互,需要的朋友可以參考下
    2016-03-03
  • Eclipse?2022?設(shè)置中文漢化的超詳細(xì)圖文教程

    Eclipse?2022?設(shè)置中文漢化的超詳細(xì)圖文教程

    這篇文章主要介紹了Eclipse?2022?設(shè)置中文漢化的超詳細(xì)圖文教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03
  • java-RGB調(diào)色面板的實(shí)現(xiàn)(事件監(jiān)聽器之匿名內(nèi)部類)

    java-RGB調(diào)色面板的實(shí)現(xiàn)(事件監(jiān)聽器之匿名內(nèi)部類)

    這篇文章主要介紹了java-RGB調(diào)色面板的實(shí)現(xiàn)(事件監(jiān)聽器之匿名內(nèi)部類),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11

最新評(píng)論