springMVC中的view視圖詳細(xì)解析
Spring MVC中的視圖是view接口,視圖的作用是渲染數(shù)據(jù),將模型model中的數(shù)據(jù)展示給用戶。
springMVC視圖的種類(lèi)很多,默認(rèn)有轉(zhuǎn)發(fā)視圖和重定向視圖。
當(dāng)工程引入jstl的依賴(lài),轉(zhuǎn)發(fā)視圖會(huì)自動(dòng)轉(zhuǎn)換為jstlView,若使用的視圖技術(shù)為T(mén)hymleaf,在springMVC的配置文件中配置了Thymleaf的視圖解析器,由此視圖解析器解析之后所得到的是ThymleafView。
1、ThymleafView
當(dāng)控制器方法總所設(shè)置的視圖名稱(chēng)沒(méi)有任何前綴時(shí),此時(shí)的視圖名稱(chēng)會(huì)被springMVC配置文件中所配置的視圖解析器解析,視圖名稱(chēng)拼接視圖前綴和視圖后綴所得到的路徑,會(huì)通過(guò)轉(zhuǎn)發(fā)的方式實(shí)現(xiàn)跳轉(zhuǎn)。
@RequestMapping("/testHello")
public String testHello(){
return "hello";
}
2、轉(zhuǎn)發(fā)視圖
springMVC中默認(rèn)的轉(zhuǎn)發(fā)視圖是InternalResourceView
springMVC中創(chuàng)建轉(zhuǎn)發(fā)視圖的情況:
當(dāng)控制器方法中設(shè)置的視圖名稱(chēng)為“forward:”為前綴時(shí),創(chuàng)建InternalResourceView視圖,此時(shí)的視圖名稱(chēng)不會(huì)被springMVC配置文件中所配置的視圖解析器解析,而是會(huì)將前綴“forward:”去掉,剩余部分作為最終路徑通過(guò)轉(zhuǎn)發(fā)的方式實(shí)現(xiàn)跳轉(zhuǎn)。
例如:“forward:/”“forward:/employee”
@RequestMapping("/testForward")
public String testForward(){
return "forward:/testThymeleafView";
}
3、重定向視圖
springMVC中默認(rèn)的重定向視圖是RedirectView
當(dāng)控制器方法中所設(shè)置的視圖名稱(chēng)為“redirect:”為前綴時(shí),創(chuàng)建RedirectView視圖,此時(shí)的視圖名稱(chēng)不會(huì)被springMVC配置文件中所配置的視圖解析器解析,而是會(huì)將前綴“redirect:”去掉,剩余部分作為最終路徑通過(guò)重定向的方式實(shí)現(xiàn)跳轉(zhuǎn)。
例如:“redirect:/”“redirect:/employee”
@RequestMapping("/testRedirect")
public String testRedirect(){
return "redirect:/testHello";
}
注:重定向視圖在解析時(shí),會(huì)先將redirect:前綴去掉,然后會(huì)判斷剩余部分是否以/開(kāi)頭,若是則會(huì)自動(dòng)拼接上下文路徑
4、視圖控制器view-controller
當(dāng)控制器方法中,僅僅用來(lái)實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn),即只需要設(shè)置視圖名稱(chēng)時(shí),可以將處理器方法使用view-controller標(biāo)簽進(jìn)行表示
解釋?zhuān)涸诋?dāng)前請(qǐng)求映射所對(duì)應(yīng)的控制器方法中,沒(méi)有其他的請(qǐng)求過(guò)程的處理,只需要設(shè)置一個(gè)視圖名稱(chēng)的時(shí)候,就可以使用view-controller
在springMVC.xml文件中添加配置
<!--path:設(shè)置處理的請(qǐng)求地址 view-name:設(shè)置請(qǐng)求地址所對(duì)應(yīng)的視圖名稱(chēng) -->
<mvc:view-controller path="/" view-name="index"></mvc:view-controller>
<mvc:view-controller path="/test_view" view-name="test_view"></mvc:view-controller>
<mvc:view-controller path="/test_rest" view-name="test_rest"></mvc:view-controller>注:當(dāng)springMVC中設(shè)置任何一個(gè)view-controller時(shí),其他控制器中的請(qǐng)求映射將全部失效,此時(shí)需要在springMVC的核心配置文件中設(shè)置開(kāi)啟MVC注解驅(qū)動(dòng)的標(biāo)簽:
<!--開(kāi)啟MVC的注解驅(qū)動(dòng),可以讓其他控制器中的請(qǐng)求映射重新實(shí)現(xiàn)效果--> <mvc:annotation-driven />
到此這篇關(guān)于springMVC中的view視圖的文章就介紹到這了,更多相關(guān)springMVC view視圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 詳解SpringMVC中的四種跳轉(zhuǎn)方式、視圖解析器問(wèn)題
- SpringMVC超詳細(xì)講解視圖和視圖解析器
- SpringMVC視圖轉(zhuǎn)發(fā)重定向區(qū)別及控制器詳解
- 使用springmvc配置視圖解析器和重定向方式
- SpringMVC響應(yīng)視圖和結(jié)果視圖詳解
- SpringMVC通過(guò)模型視圖ModelAndView渲染視圖的實(shí)現(xiàn)
- SpringMvc響應(yīng)數(shù)據(jù)及結(jié)果視圖實(shí)現(xiàn)代碼
- springmvc視圖解析流程代碼實(shí)例
- SpringMVC視圖作用詳解
相關(guān)文章
IDEA新建javaWeb以及Servlet簡(jiǎn)單實(shí)現(xiàn)小結(jié)
這篇文章主要介紹了IDEA新建javaWeb以及Servlet簡(jiǎn)單實(shí)現(xiàn)小結(jié),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-11-11
Java實(shí)現(xiàn)直接插入排序與折半插入排序的示例詳解
這篇文章主要為大家詳細(xì)介紹了插入排序中兩個(gè)常見(jiàn)的排序:直接插入排序與折半插入排序。本文用Java語(yǔ)言實(shí)現(xiàn)了這兩個(gè)排序算法,感興趣的可以學(xué)習(xí)一下2022-06-06
springboot利用aspose預(yù)覽office文件的實(shí)現(xiàn)過(guò)程
這篇文章主要給大家介紹了關(guān)于springboot利用aspose預(yù)覽office文件的相關(guān)資料,文中通過(guò)示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考價(jià)值,需要的朋友可以參考下2021-06-06
nacos一直頻繁的打印日志get changegroupkeys問(wèn)題
這篇文章主要介紹了nacos一直頻繁的打印日志get changegroupkeys問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
Mybatis開(kāi)發(fā)環(huán)境搭建實(shí)現(xiàn)數(shù)據(jù)的增刪改查功能
這篇文章主要介紹了 Mybatis開(kāi)發(fā)環(huán)境搭建實(shí)現(xiàn)數(shù)據(jù)的增刪改查功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03
關(guān)于JSON.toJSONString()和Gson.toJson()方法的比較
本文介紹了兩種將Java對(duì)象轉(zhuǎn)換為JSON字符串的方法:阿里的`JSON.toJSONString()`和谷歌的`Gson.toJson()`,通過(guò)一個(gè)示例,展示了當(dāng)使用繼承關(guān)系且子類(lèi)覆蓋父類(lèi)字段時(shí),`Gson`會(huì)報(bào)錯(cuò),而`JSON`可以正常運(yùn)行,作者建議在處理JSON相關(guān)操作時(shí)使用阿里的`JSON`類(lèi)2024-11-11
mybatis參數(shù)類(lèi)型不匹配錯(cuò)誤argument type mismatch的處理方案
這篇文章主要介紹了mybatis參數(shù)類(lèi)型不匹配錯(cuò)誤argument type mismatch的處理方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01
Java自定義注解對(duì)枚舉類(lèi)型參數(shù)的校驗(yàn)方法
文章介紹了如何使用Java注解對(duì)枚舉類(lèi)型參數(shù)進(jìn)行校驗(yàn),通過(guò)自定義注解和注解校驗(yàn)類(lèi)實(shí)現(xiàn)參數(shù)的靈活性校驗(yàn),感興趣的朋友一起看看吧2025-01-01
SpringBoot項(xiàng)目使用jasypt加解密的方法
jasypt是一個(gè)通用的加解密庫(kù),我們可以使用它在配置文件中對(duì)數(shù)據(jù)庫(kù)密碼進(jìn)行加密,以確保其安全性,接下來(lái)通過(guò)本文給大家介紹SpringBoot項(xiàng)目使用jasypt加解密的方法,感興趣的朋友一起看看吧2022-05-05

