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

SpringMVC獲取HTTP中元素的實(shí)現(xiàn)示例

 更新時(shí)間:2025年02月27日 08:31:05   作者:鴿鴿程序猿  
本文主要介紹了SpringMVC獲取HTTP中的元素,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、獲取URL中的參數(shù)@PathVariable

path variable: 路徑變量。
@PathVariable這個(gè)注解可以拿到URL中的參數(shù),使用注意:

  • 寫在方法的參數(shù)名前,每個(gè)變量都要寫。
  • 當(dāng)URL中的變量與方法中的變量同名時(shí),可以不在@PathVariable寫上URL的變量名。
  • 當(dāng)要對(duì)拿到的URL變量重命名,要在@PathVariable()括號(hào)中寫上URL的名字。
  • URL中的參數(shù)必傳。

后端代碼:

Postman傳參:

二、上傳?件@RequestPart

  • 上傳文件使用MuMultipartFile類下的transferTo方法。
  • 使用@RequestPart注解可以進(jìn)行重命名。
  • 記得拋異常

后端代碼:

@RequestMapping("/r2")
    public String getFile(@RequestPart("file11") MultipartFile file) throws IOException {
        String fileName = file.getOriginalFilename();
        file.transferTo(new File("E:/"+ file.getOriginalFilename()));
        return "上傳成功"+fileName;
    }

Postman傳參:

  • 在Body里面找form-data傳File類型。

三、獲取Cookie/Session

3.1 HttpServletRequest和 HttpServletResponse

  • HttpServletRequest這個(gè)類可以拿到HTTP請(qǐng)求中的東西。
  • HttpServletResponse這個(gè)類可以拿到HTTP響應(yīng)中的東西,還可以進(jìn)行修改。

3.2 獲取Cookie

獲取Cookie有以下兩種方式。

3.2.1 使用HttpServletRequest

只需要調(diào)用該類下的getCookies方法即可。

@RequestMapping("r3")
    public String r3 (HttpServletRequest request) {
        Cookie[] cookies = request.getCookies();
        return "獲取成功";
    }

Postman發(fā)請(qǐng)求:

3.2.2 使用注解@CookieValue

在注解中寫下Cookie中變量的名,然后后面跟著要賦值的變量類型與名字。
這種方法每次只能獲得一個(gè)Cookie變量。

@RequestMapping("/r4")
    public String r4(@CookieValue("name") String name) {
        return name;
    }

Postman發(fā)請(qǐng)求:

3.3 設(shè)置session

使用HttpServletRequest下的getSession方法,拿到sessionId,拿到session。

 HttpSession getSession(boolean create);
  • 默認(rèn)為true,如果沒有拿到session,返回一個(gè)空HttpSession對(duì)象。
  • 如果為false,沒有拿到session,返回一個(gè)null。

代碼:

@RequestMapping("/r5")
    public String setSession(HttpServletRequest request) {
        HttpSession session = request.getSession();
        session.setAttribute("name","lisi");
        session.setAttribute("age","88");
        return "設(shè)置成功";
    }

3.4 獲取session

獲取session有以下三種方式。

3.4.1 使用HttpServletRequest

使用HttpServletRequest類下的getSession方法拿到session,
再通過HttpSession 類下的方法getAttribute獲取session中的對(duì)象 Object getAttribute(String name);。

代碼:

@RequestMapping("/r6")
    public String r5(HttpServletRequest request) {
        HttpSession session = request.getSession(false);
        if (null == session) {
            return "用戶未登錄";
        } else {
            return "用戶名:"+(String) session.getAttribute("name") +
                    "用戶年齡"+(String) session.getAttribute("age");
        }
    }

Postman傳參:

3.4.2 直接使用HttpSession

相當(dāng)于HttpSession session = request.getSession();直接在方法參數(shù)完成。

@RequestMapping("/r8")
    public String r5(HttpSession session ) {
        if (null == session) {
            return "用戶未登錄";
        } else {
            return "用戶名:"+(String) session.getAttribute("name") +
                    "用戶年齡"+(String) session.getAttribute("age");
        }
    }

3.4.3 使用注解@SessionValue

注解中value代表:session中的對(duì)象, required 調(diào)配沒拿到session時(shí)返回什么,true返回空HttpSession對(duì)象,false返回null。
代碼:

@RequestMapping("r7")
    public String r6(@SessionAttribute(value = "name",required = false) String name) {
        System.out.println(name);
        return  name;
    }

Postman傳參:

四、獲取Header

獲取session有以下兩種方式。

4.1 使用HttpServletRequest

使用HttpServletRequest類下的getHeader方法,方法中填入想要的header中的參數(shù)名稱,拿到header下的參數(shù)。

代碼:

@RequestMapping("/r9")
    public String getHeader(HttpServletRequest request) {
        String header = request.getHeader("user-agent");
        return "獲取到 "+header;

    }

Postman傳參:

4.2 使用注解@RequestHeader

在注解中寫下Header中參數(shù)的名,然后后面跟著要賦值給的變量類型與名字。

代碼:

@RequestMapping("/r10")
    public String getHeader2(@RequestHeader("user-agent") String header) {
        return "獲取到 "+header;
    }

Postman傳參:

到此這篇關(guān)于SpringMVC獲取HTTP中元素的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)SpringMVC獲取HTTP元素內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • JAVA Log 日志級(jí)別和使用配置示例

    JAVA Log 日志級(jí)別和使用配置示例

    本文介紹了Java中主流的日志框架,包括Logback和Log4j2,并詳細(xì)解釋了日志級(jí)別及其使用場(chǎng)景,同時(shí),還提供了配置示例和使用技巧,如正確的日志記錄方式、異常日志記錄、性能優(yōu)化以及環(huán)境特定的日志配置,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2025-11-11
  • Mybatis環(huán)境配置及測(cè)試詳解

    Mybatis環(huán)境配置及測(cè)試詳解

    這篇文章主要介紹了Mybatis環(huán)境配置及測(cè)試詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • SpringDataJpa多表操作的實(shí)現(xiàn)

    SpringDataJpa多表操作的實(shí)現(xiàn)

    開發(fā)過程中會(huì)有很多多表的操作,他們之間有著各種關(guān)系,本文主要介紹了SpringDataJpa多表操作的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • IDEA反編譯jar,查看源碼方式

    IDEA反編譯jar,查看源碼方式

    該篇文章總結(jié)了查看Java本地jar包注釋的幾種方法,包括使用快捷鍵CTRL+q和在設(shè)置中設(shè)置自動(dòng)浮現(xiàn)注釋
    2024-11-11
  • mybatis創(chuàng)建項(xiàng)目報(bào)Invalid?bound?statement?(not?found)錯(cuò)誤解決方法

    mybatis創(chuàng)建項(xiàng)目報(bào)Invalid?bound?statement?(not?found)錯(cuò)誤解決方法

    使用MyBatis能夠幫助我們將SQL語句和Java代碼分離,這篇文章主要給大家介紹了關(guān)于mybatis創(chuàng)建項(xiàng)目報(bào)Invalid?bound?statement?(not?found)錯(cuò)誤的解決方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • Java 你知道什么是耦合、如何解(降低)耦合

    Java 你知道什么是耦合、如何解(降低)耦合

    這篇文章主要介紹了Java 你知道什么是耦合、如何解(降低)耦合的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Spring Cloud Nacos配置管理方案

    Spring Cloud Nacos配置管理方案

    Nacos是SpringCloud中用于服務(wù)注冊(cè)與發(fā)現(xiàn)和配置管理的組件,提供多種健康檢查機(jī)制和歷史版本管理,Nacos支持單機(jī)、集群和多集群模式,通過OpenAPI和多種語言客戶端進(jìn)行接入,感興趣的朋友一起看看吧
    2025-01-01
  • 基于Java生成GUID的實(shí)現(xiàn)方法

    基于Java生成GUID的實(shí)現(xiàn)方法

    本篇文章是對(duì)Java生成GUID的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • Java Collection和Collections的區(qū)別

    Java Collection和Collections的區(qū)別

    本文主要介紹了Java Collection和Collections的區(qū)別,Collection?是表示集合的接口,而?Collections?是對(duì)集合進(jìn)行操作的工具類,下面就來介紹一下具體用法,感興趣的可以了解一下
    2023-12-12
  • Java中Map接口使用以及有關(guān)集合的面試知識(shí)點(diǎn)匯總

    Java中Map接口使用以及有關(guān)集合的面試知識(shí)點(diǎn)匯總

    在java面試過程中,Map時(shí)常會(huì)被作為一個(gè)面試點(diǎn)來問,下面這篇文章主要給大家介紹了關(guān)于Java中Map接口使用以及有關(guān)集合的面試知識(shí)點(diǎn)匯總的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07

最新評(píng)論

韶山市| 凉城县| 德安县| 青海省| 新乡市| 北安市| 南木林县| 南部县| 九台市| 白山市| 确山县| 余干县| 昌乐县| 东安县| 洱源县| 吐鲁番市| 宜良县| 土默特右旗| 贵溪市| 松潘县| 和硕县| 游戏| 江门市| 平江县| 阜新市| 营口市| 佛学| 景谷| 松江区| 新巴尔虎右旗| 丰县| 多伦县| 龙胜| 申扎县| 合川市| 合江县| 开封县| 腾冲县| 高青县| 凉城县| 临潭县|