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

淺談Springmvc中的頁面跳轉(zhuǎn)問題

 更新時間:2017年12月06日 10:22:26   作者:昨天的你,現(xiàn)在的未來  
這篇文章主要介紹了淺談Springmvc中的頁面跳轉(zhuǎn)問題,具有一定參考價值,需要的朋友可以了解下。

SpringMvc跳轉(zhuǎn)問題

SpringMvc的Controller每次處理完數(shù)據(jù)后都會返回一個邏輯視圖(view)和模型(model)

所以我們會看到原生的Controller是返回一個ModelAndView(內(nèi)部包含了view和model)。

正常情況下(除非被@ModelAttribute注解了的方法),否則最終都會返回ModelAndView。

當(dāng)然有時候一個功能處理方法不一定要返回一個邏輯視圖,也可以重定向到另一個功能方法

服務(wù)器內(nèi)部轉(zhuǎn)發(fā)到一個邏輯視圖或者另一個功能方法。

---

SpringMvc的強(qiáng)大之處在于它封裝了Servlet大量底層代碼,但是有沒有完全屏蔽用戶對ServletAPI

的使用。所以SpringMvc中頁面跳轉(zhuǎn)也是分為兩大類:

使用ServletAPI實(shí)現(xiàn)頁面跳轉(zhuǎn)

重定向方式:由于重定向的本質(zhì)是要求瀏覽器重新發(fā)送一個請求,SpringMvc里面的頁面一般是放到WEB-INF下,瀏覽器不可以直接訪問)

所以這里的重定向?qū)嵸|(zhì)是重定向到另一個功能方法。

服務(wù)器內(nèi)部請求轉(zhuǎn)發(fā):請求轉(zhuǎn)發(fā)為服務(wù)器內(nèi)部行為,所以可以直接跳轉(zhuǎn)訪問一個jsp頁面也可以跳轉(zhuǎn)到另一個功能處理方法。

```text

//使用原生的ServletApi進(jìn)行頁面跳轉(zhuǎn)
@RequestMapping("/c")
public String test(HttpServletResponse response, HttpServletRequest request) throws ServletException, IOException {
System.out.println("testC");
//跳轉(zhuǎn)到服務(wù)器內(nèi)部的一個頁面
//request.getRequestDispatcher("/WEB-INF/jsp/index.jsp").forward(request,response);
  //跳轉(zhuǎn)到服務(wù)器內(nèi)部的一個功能處理方法
  //request.getRequestDispatcher("/dispather/b").forward(request,response);
  //重定向一個功能方法
  response.sendRedirect(request.getContextPath()+"/dispather/b");
  return null;
 }

使用SpringMvc的API實(shí)現(xiàn)頁面跳轉(zhuǎn)

直接返回邏輯視圖名

text @RequestMapping("/b") public String testB(){ System.out.println("testB"); //直接返回一個視圖 return "index"; }

返回自定義的ModelAndView:自定義ModelAndView時,可以重定向或請求轉(zhuǎn)發(fā)

```text

//Controller中使用ModelAndView進(jìn)行跳轉(zhuǎn)和重定向
@RequestMapping("/e")
public ModelAndView testE(){
System.out.println("testE");
//跳轉(zhuǎn)到服務(wù)器內(nèi)部的一個頁面
//return "index";
 //跳轉(zhuǎn)到服務(wù)器內(nèi)部的一個功能處理方法
 //return new ModelAndView("forward:/dispather/b");
 //重定向一個功能方法
 return new ModelAndView("redirect:/dispather/b");
}

總結(jié)

以上就是本文關(guān)于淺談Springmvc中的頁面跳轉(zhuǎn)問題的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

參考:

Java編程實(shí)現(xiàn)springMVC簡單登錄實(shí)例

SpringMVC攔截器實(shí)現(xiàn)單點(diǎn)登錄

springmvc Rest風(fēng)格介紹及實(shí)現(xiàn)代碼示例

相關(guān)文章

  • java8新特性教程之time包使用總結(jié)

    java8新特性教程之time包使用總結(jié)

    Java8新增了date和time的util包,下面這篇文章主要給大家介紹了關(guān)于java8新特性教程之time包使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • JSR303校驗(yàn)前端傳遞的數(shù)據(jù)方式

    JSR303校驗(yàn)前端傳遞的數(shù)據(jù)方式

    這篇文章主要介紹了JSR303校驗(yàn)前端傳遞的數(shù)據(jù)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Mybatis全面分頁插件

    Mybatis全面分頁插件

    這篇文章主要為大家詳細(xì)介紹了Mybatis全面分頁插件的使用方法,比較適用于在分頁時候進(jìn)行攔截,感興趣的小伙伴們可以參考一下
    2016-08-08
  • 詳解Java的Proxy動態(tài)代理機(jī)制

    詳解Java的Proxy動態(tài)代理機(jī)制

    Java有兩種代理方式,一種是靜態(tài)代理,另一種是動態(tài)代理。對于靜態(tài)代理,其實(shí)就是通過依賴注入,對對象進(jìn)行封裝,不讓外部知道實(shí)現(xiàn)的細(xì)節(jié)。很多 API 就是通過這種形式來封裝的
    2021-06-06
  • SpringBoot整合Mybatis,解決TypeAliases配置失敗的問題

    SpringBoot整合Mybatis,解決TypeAliases配置失敗的問題

    這篇文章主要介紹了SpringBoot整合Mybatis,解決TypeAliases配置失敗的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java集合排序規(guī)則接口Comparator用法解析

    Java集合排序規(guī)則接口Comparator用法解析

    這篇文章主要介紹了Java集合排序規(guī)則接口Comparator用法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-09-09
  • spring AOP的Around增強(qiáng)實(shí)現(xiàn)方法分析

    spring AOP的Around增強(qiáng)實(shí)現(xiàn)方法分析

    這篇文章主要介紹了spring AOP的Around增強(qiáng)實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了spring面向切面AOP的Around增強(qiáng)具體步驟與相關(guān)操作方法,需要的朋友可以參考下
    2020-01-01
  • 詳解Java中字符流與字節(jié)流的區(qū)別

    詳解Java中字符流與字節(jié)流的區(qū)別

    這篇文章主要介紹了詳解Java中字符流與字節(jié)流的區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • Spring?Cloud?+?Nacos?+?Seata整合過程(分布式事務(wù)解決方案)

    Spring?Cloud?+?Nacos?+?Seata整合過程(分布式事務(wù)解決方案)

    Seata 是一款開源的分布式事務(wù)解決方案,致力于在微服務(wù)架構(gòu)下提供高性能和簡單易用的分布式事務(wù)服務(wù),這篇文章主要介紹了Spring?Cloud?+?Nacos?+?Seata整合過程(分布式事務(wù)解決方案),需要的朋友可以參考下
    2022-03-03
  • Mybatis自定義TypeHandler解決特殊類型轉(zhuǎn)換問題詳解

    Mybatis自定義TypeHandler解決特殊類型轉(zhuǎn)換問題詳解

    這篇文章主要介紹了Mybatis自定義TypeHandler解決特殊類型轉(zhuǎn)換問題詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11

最新評論

庆云县| 龙陵县| 乌海市| 舒城县| 英吉沙县| 罗平县| 渝中区| 原阳县| 和田市| 平南县| 承德县| 鄂伦春自治旗| 泰州市| 泸溪县| 莒南县| 辽阳县| 濉溪县| 泗阳县| 尼玛县| 安丘市| 定兴县| 双江| 孟连| 库尔勒市| 宁国市| 普兰县| 治多县| 洪泽县| 濮阳县| 南昌市| 平泉县| 阳西县| 兰坪| 耒阳市| 灌阳县| 宁德市| 张家港市| 邻水| 子长县| 思茅市| 汤阴县|