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

SpringMVC請求數(shù)據(jù)詳解講解

 更新時(shí)間:2022年07月28日 08:49:43   作者:·~簡單就好  
Spring MVC 是 Spring 提供的一個(gè)基于 MVC 設(shè)計(jì)模式的輕量級 Web 開發(fā)框架,本質(zhì)上相當(dāng)于 Servlet,Spring MVC 角色劃分清晰,分工明細(xì),本章來講解SpringMVC如何請求數(shù)據(jù)

一、RequestMapping注解

RequestMapping注解的作用是建立請求URL和處理方法之間的對應(yīng)關(guān)系

RequestMapping注解可以作用在方法和類上

  • 作用在類上:第一級的訪問目錄
  • 作用在方法上:第二級的訪問目錄
  • 細(xì)節(jié):路徑可以不編寫 / 表示應(yīng)用的根目錄開始

1、RequestMapping的屬性

path 指定請求路徑的url

value value屬性和path屬性是一樣的

mthod 指定該方法的請求方式

@Controller
@RequestMapping(path = "/role") // 一級請求路徑
public class RoleController {
    /**
     * /role/save
     * method="當(dāng)前方法允許請求方式能訪問"
     * params="請求路徑上傳參數(shù)"
     * @return
     */
   @RequestMapping(path = "/save",method = {RequestMethod.GET})
    public String save(){
        System.out.println("保存角色...");
        return "suc";
    }
    @RequestMapping(value = "/delete")
    public String delete(){
        System.out.println("刪除角色...");
        return "suc";
    }
}

2、RequestMapping的請求參數(shù)綁定

(1). 綁定機(jī)制

  • 表單提交的數(shù)據(jù)都是k=v格式的 username=haha&password=123
  • SpringMVC的參數(shù)綁定過程是把表單提交的請求參數(shù),作為控制器中方法的參數(shù)進(jìn)行綁定的
  • 要求:提交表單的name和參數(shù)的名稱是相同的

(2). 支持的數(shù)據(jù)類型

  • 基本數(shù)據(jù)類型和字符串類型
  • 實(shí)體類型(JavaBean)
  • 集合數(shù)據(jù)類型(List、map集合等)

? 基本數(shù)據(jù)類型和字符串類型

  • 提交表單的name和參數(shù)的名稱是相同的
  • 區(qū)分大小寫

? 實(shí)體類型(JavaBean)

  • 提交表單的name和JavaBean中的屬性名稱需要一致
  • 如果一個(gè)JavaBean類中包含其他的引用類型,那么表單的name屬性需要編寫成:對象.屬性 例如:address.name
  • 給集合屬性數(shù)據(jù)封裝
  • JSP頁面編寫方式:list[0].屬性

二、RequestParam注解

作用:把請求中的指定名稱的參數(shù)傳遞給控制器中的形參賦值

屬性

  • ? value:請求參數(shù)中的名稱
  • ? required:請求參數(shù)中是否必須提供此參數(shù),默認(rèn)值是true,必須提供

代碼如下

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
@RequestMapping("/dept")
public class DeptController {
    @RequestMapping("/save")
    public String save(@RequestParam(value = "username",required = false) String name){
        System.out.println(name);
        return "suc";
    }
}

三、RequestBody注解

作用:用于獲取請求體的內(nèi)容(注意:get方法不可以):將前端的json對象轉(zhuǎn)換成javabean實(shí)體對象

屬性

required:是否必須有請求體,默認(rèn)值是true

代碼如下

    @RequestMapping("/save2")
    public String save2(@RequestBody Student student){
        System.out.println(body);
        return "suc";
    }

四、RestFul風(fēng)格

1、@PathVariable注解

url:

http://localhost:8080/SpringMVC/rest/commit.do/1/1

controller接收:用占位符的形式截取

//映射訪問路徑
@RequestMapping("/commit.do/{p1}/{p2}")
public String index(@PathVariable int p1, @PathVariable String p2, Model model){
    String result = p1+p2;
    //Spring MVC會自動(dòng)實(shí)例化一個(gè)Model對象用于向視圖中傳值
    model.addAttribute("msg", "結(jié)果:"+result);
    //返回視圖位置
    return "suc";
}

2、使用method屬性指定請求類型

用于約束請求的類型,可以收窄請求范圍。指定請求謂詞的類型如GET, POST, HEAD, OPTIONS, PUT, PATCH, DELETE, TRACE等

到此這篇關(guān)于SpringMVC請求數(shù)據(jù)詳解講解的文章就介紹到這了,更多相關(guān)SpringMVC請求數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何修改nacos權(quán)重報(bào)錯(cuò)問題

    如何修改nacos權(quán)重報(bào)錯(cuò)問題

    這篇文章主要介紹了如何修改nacos權(quán)重報(bào)錯(cuò)問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • java中線程池最實(shí)用的創(chuàng)建與關(guān)閉指南

    java中線程池最實(shí)用的創(chuàng)建與關(guān)閉指南

    試中經(jīng)常會問到,創(chuàng)建一個(gè)線程池需要哪些參數(shù)啊,線程池的工作原理啊,卻很少會問到線程池如何安全關(guān)閉的,下面這篇文章主要給大家介紹了關(guān)于java中線程池最實(shí)用的創(chuàng)建與關(guān)閉的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • 關(guān)于idea-web.xml版本過低怎么生成新的(web.xml報(bào)錯(cuò))問題

    關(guān)于idea-web.xml版本過低怎么生成新的(web.xml報(bào)錯(cuò))問題

    今天通過本文給大家分享idea-web.xml版本過低怎么生成新的(web.xml報(bào)錯(cuò))問題,通過更換web.xml版本解決此問題,感興趣的朋友跟隨小編一起看看吧
    2021-07-07
  • idea報(bào)錯(cuò):java程序包c(diǎn)om.github.xiaoymin.knife4j.spring.annotations不存在問題解決

    idea報(bào)錯(cuò):java程序包c(diǎn)om.github.xiaoymin.knife4j.spring.annotations

    這篇文章主要介紹了idea報(bào)錯(cuò):java程序包c(diǎn)om.github.xiaoymin.knife4j.spring.annotations不存在問題解決,需要的朋友可以參考下
    2023-06-06
  • JAVA基礎(chǔ)-GUI

    JAVA基礎(chǔ)-GUI

    這篇文章主要介紹了JAVA中關(guān)于GUI的相關(guān)知識,文中代碼非常詳細(xì),供大家參考和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • 在IDEA中創(chuàng)建父工程和子模塊module的方法步驟

    在IDEA中創(chuàng)建父工程和子模塊module的方法步驟

    這篇文章主要介紹了在IDEA中創(chuàng)建父工程和子模塊module的方法步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-02-02
  • druid ParserException類錯(cuò)誤問題及解決

    druid ParserException類錯(cuò)誤問題及解決

    這篇文章主要介紹了druid ParserException類錯(cuò)誤問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • kafka topic 權(quán)限控制(設(shè)置刪除權(quán)限)

    kafka topic 權(quán)限控制(設(shè)置刪除權(quán)限)

    大家都知道Kafka是一個(gè)消息隊(duì)列,把消息放到隊(duì)列里邊的叫生產(chǎn)者,從隊(duì)列里邊消費(fèi)的叫消費(fèi)者。今天通過本文給大家介紹kafka topic 權(quán)限控制的相關(guān)知識,感興趣的朋友一起看看吧
    2021-11-11
  • 一分鐘掌握J(rèn)ava?Quartz定時(shí)任務(wù)

    一分鐘掌握J(rèn)ava?Quartz定時(shí)任務(wù)

    這篇文章主要為大家介紹了Java?Quartz定時(shí)任務(wù)一分鐘掌握教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • Java的HashMap源碼解析

    Java的HashMap源碼解析

    這篇文章主要介紹了Java的HashMap源碼解析,HashMap是一個(gè)用于存儲Key-Value鍵值對的集合,每一個(gè)鍵值對是一個(gè)Node,后臺是用一個(gè)Node數(shù)組來存放數(shù)據(jù),這個(gè)Node數(shù)組就是HashMap的主干,需要的朋友可以參考下
    2023-11-11

最新評論

新泰市| 无为县| 陵川县| 德庆县| 孟津县| 康马县| 潼关县| 大安市| 中超| 滨州市| 元谋县| 南郑县| 辽中县| 阿克| 于都县| 桓仁| 广西| 新野县| 三门峡市| 万荣县| 新竹县| 泰州市| 色达县| 鄂州市| 哈密市| 建水县| 锦州市| 江陵县| 桂阳县| 满城县| 右玉县| 东方市| 阳春市| 枣强县| 武平县| 靖江市| 商洛市| 阿坝县| 历史| 嫩江县| 宿州市|