欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解spring mvc 請(qǐng)求轉(zhuǎn)發(fā)和重定向

 更新時(shí)間:2017年02月21日 16:46:59   作者:雙斜杠少年  
這篇文章主要介紹了詳解spring mvc 請(qǐng)求轉(zhuǎn)發(fā)和重定向,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

請(qǐng)求重定向與請(qǐng)求轉(zhuǎn)發(fā)的比較,HttpServletResponse.sendRedirect方法和RequestDispatcher.forward方法都可以讓瀏覽器獲得另外一個(gè)URL所指向的資源,但兩者的內(nèi)部運(yùn)行機(jī)制有很大的區(qū)別。

1.RequestDispatcher.forward方法只能將請(qǐng)求轉(zhuǎn)發(fā)給同一個(gè)Web應(yīng)用中的組件,HttpServletResponse.sendRedirect不僅可以重定向到當(dāng)前應(yīng)用程序的其他資源,還可以重定向到同一個(gè)站點(diǎn)上的其他應(yīng)用程序的資源,甚至是使用絕對(duì)URL重定向到其他站點(diǎn)的資源。對(duì)于sendRedirect如果傳遞的URL以”/”開(kāi)頭,他是相對(duì)于整個(gè)Web站點(diǎn)的根目錄;對(duì)于forward如果傳遞的URL以”/”開(kāi)頭,它是相對(duì)于當(dāng)前Web應(yīng)用程序的根目錄。

2.sendRedirect對(duì)瀏覽器做出的響應(yīng)是重新發(fā)出對(duì)另外一個(gè)URL的訪問(wèn)請(qǐng)求,forward在服務(wù)器端內(nèi)部將請(qǐng)求轉(zhuǎn)發(fā)給另外一個(gè)資源,瀏覽器只知道發(fā)出了請(qǐng)求并得到了響應(yīng)結(jié)果

3.forward的調(diào)用者與被調(diào)用者之間共享相同的request對(duì)象和response對(duì)象,他們屬于同一個(gè)訪問(wèn)請(qǐng)求和響應(yīng)過(guò)程;sendRedirect的調(diào)用者與被調(diào)用者使用各自的request和response對(duì)象,屬于兩個(gè)獨(dú)立的訪問(wèn)請(qǐng)求和響應(yīng)過(guò)程

請(qǐng)求重定向以redirect:開(kāi)頭,請(qǐng)求轉(zhuǎn)發(fā)以forward:開(kāi)頭;

樣例如下:

@RequestMapping(value="/users")
@Controller
public class UserController {

  @RequestMapping(value="/queryuser",method = RequestMethod.GET)
  public String queryuser(Model model) throws Exception {
    return "forward:/users/uc";
  }

  @RequestMapping(value="/uc",method = RequestMethod.GET)
  public String quer(Model model) throws Exception {

    return "redirect:/#/home";
  }

   @RequestMapping(value = "/save", method = RequestMethod.GET) 
    public ModelAndView saveUser(HttpServletRequest request, HttpServletResponse response) throws Exception { 
      ModelAndView mv = new ModelAndView("forward:/users/uc");//默認(rèn)為forward模式 
//    ModelAndView mv = new ModelAndView("redirect:/#/home");//redirect模式 
      return mv; 
    } 
} 

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java事件監(jiān)聽(tīng)機(jī)制講解

    Java事件監(jiān)聽(tīng)機(jī)制講解

    今天小編就為大家分享一篇關(guān)于Java事件監(jiān)聽(tīng)機(jī)制講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02
  • 詳解SpringBoot中的index首頁(yè)的訪問(wèn)、自定義Favicon圖標(biāo)

    詳解SpringBoot中的index首頁(yè)的訪問(wèn)、自定義Favicon圖標(biāo)

    這篇文章主要介紹了SpringBoot中的index首頁(yè)的訪問(wèn)、自定義Favicon圖標(biāo),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • MybatisPlus中@TableField注解的使用詳解

    MybatisPlus中@TableField注解的使用詳解

    這篇文章主要介紹了MybatisPlus中@TableField注解的使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • JVM Metaspace內(nèi)存溢出問(wèn)題解決方案

    JVM Metaspace內(nèi)存溢出問(wèn)題解決方案

    這篇文章主要介紹了JVM Metaspace內(nèi)存溢出排查總結(jié)過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • Springboot如何獲取上下文ApplicationContext

    Springboot如何獲取上下文ApplicationContext

    這篇文章主要介紹了Springboot如何獲取上下文ApplicationContext,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • java通過(guò)反射創(chuàng)建對(duì)象并調(diào)用方法

    java通過(guò)反射創(chuàng)建對(duì)象并調(diào)用方法

    這篇文章主要介紹了java通過(guò)反射創(chuàng)建對(duì)象并調(diào)用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • 值得Java開(kāi)發(fā)者關(guān)注的7款新工具

    值得Java開(kāi)發(fā)者關(guān)注的7款新工具

    作為老牌語(yǔ)言Java,其生態(tài)圈也出來(lái)了一些有關(guān)云服務(wù)、監(jiān)控、文檔分享方面的工具,這篇文章主要介紹了Java開(kāi)發(fā)者值得關(guān)注的7款新工具,感興趣的小伙伴們可以參考一下
    2016-07-07
  • 集合框架(Collections Framework)詳解及代碼示例

    集合框架(Collections Framework)詳解及代碼示例

    這篇文章主要介紹了集合框架(Collections Framework)詳解及代碼示例,文章涉及集合數(shù)組的區(qū)別,collection接口,iterator迭代器,list接口及其用法,LinkedHashSet集合等有關(guān)內(nèi)容,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • Springboot+Shiro+Mybatis+mysql實(shí)現(xiàn)權(quán)限安全認(rèn)證的示例代碼

    Springboot+Shiro+Mybatis+mysql實(shí)現(xiàn)權(quán)限安全認(rèn)證的示例代碼

    Shiro是Apache?的一個(gè)強(qiáng)大且易用的Java安全框架,執(zhí)行身份驗(yàn)證、授權(quán)、密碼學(xué)和會(huì)話管理,Shiro?主要分為兩個(gè)部分就是認(rèn)證和授權(quán)兩部分,這篇文章主要介紹了Springboot+Shiro+Mybatis+mysql實(shí)現(xiàn)權(quán)限安全認(rèn)證的示例代碼,需要的朋友可以參考下
    2024-07-07
  • java科學(xué)計(jì)數(shù)法轉(zhuǎn)換成數(shù)字的幾種方法

    java科學(xué)計(jì)數(shù)法轉(zhuǎn)換成數(shù)字的幾種方法

    我們?cè)谔幚泶髷?shù)值的時(shí)候,常常會(huì)遇到使用科學(xué)計(jì)數(shù)法表示的數(shù)字,科學(xué)計(jì)數(shù)法是一種表示大數(shù)值或小數(shù)值的方式,下面這篇文章主要給大家介紹了關(guān)于java科學(xué)計(jì)數(shù)法轉(zhuǎn)換成數(shù)字的幾種方法,需要的朋友可以參考下
    2024-03-03

最新評(píng)論