




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
第SpringBoot轉(zhuǎn)發(fā)請求至指定頁面的操作方法目錄1、前言2、多種方式嘗試2.1redirect、forward關(guān)鍵字(不是Java關(guān)鍵字)2.2重寫WebMvcConfigurer接口中的方法2.3引入thymeleaf3、最終效果
1、前言
原先的頁面訪問地址為::8888/office/schdule/index/,
重構(gòu)項目,SpringBoot項目,前后分離,前端文件放置靜態(tài)目錄(static)下,訪問地址::8888/office/schdule/index.html。可以看出,原先是請求接口進行轉(zhuǎn)發(fā)到指定頁面的,而現(xiàn)在是直接訪問靜態(tài)文件,為了能兼容原先訪問地址,則需對請求進行轉(zhuǎn)發(fā)處理。
2、多種方式嘗試
2.1redirect、forward關(guān)鍵字(不是Java關(guān)鍵字)
/**
*跳轉(zhuǎn)控制器
*@authorpky
@Controller
publicclassJumpControllerextendsBaseResultController{
*跳轉(zhuǎn)主頁
*@return要轉(zhuǎn)發(fā)的頁面地址
@GetMapping("html/index")
publicStringforwordIndexHtml(){
return"forword:/schdule/index.html";
*跳轉(zhuǎn)主頁
*@return要重定向的頁面地址
@GetMapping("html/index")
publicStringredirectIndexHtml(){
return"redirect:/schdule/index.html";
注意:需要使用@Controller,不可使用@RestController。
@RestController相當于@Controller和@ResponseBody合在一起的作用,如果使用@RestController注解Controller層的話,則返回的是return里面的內(nèi)容,無法返回到指定的頁面,配置的視圖解析器InternalResourceViewResolver也就自然沒有作用了。
然而,上述代碼報了CannotresolveMVCViewforword:/schdule/index.html無法解析視圖的錯誤。
2.2重寫WebMvcConfigurer接口中的方法
創(chuàng)建WebConfig類實現(xiàn)WebMvcConfigurer接口,重寫addViewControllers方法。如下代碼:
importorg.springframework.boot.SpringBootConfiguration;
importorg.springframework.web.servlet.config.annotation.*;
*Web配置類
*@authorpky
@SpringBootConfiguration
publicclassWebConfigimplementsWebMvcConfigurer{
@Override
publicvoidaddViewControllers(ViewControllerRegistryregistry){
//設置訪問相對路徑及其對應的HTML文件的相對路徑(相對于靜態(tài)目錄)
registry.addViewController("html/index").setViewName("schdule/index.html");
依然還是報了CannotresolveMVCViewforword:/schdule/index.html無法解析視圖的錯誤。
2.3引入thymeleaf
以上的錯誤是因為沒有使用模板引擎,無法識別靜態(tài)頁面。
pom.xml
!--模板引擎--
dependency
groupIdorg.springframework.boot/groupId
artifactIdspring-boot-starter-thymeleaf/artifactId
/dependency
perties
server.servlet.context-path=/office/
server.port=10000
#靜態(tài)資源路徑
spring.resources.static-locations=classpath:/static/,classpath:/templates/
值得注意的是,SpringBoot默認的靜態(tài)目錄是resources下的static,引入thymeleaf模板引擎后,還是無法識別static下的文件,只能識別templates下的文件。因此perties需配置templates資源路徑地址,如下圖index.html路徑:
修改Controller
去掉forwordredirect關(guān)鍵字,直接寫需跳轉(zhuǎn)的地址。
/**
*跳轉(zhuǎn)控制器
*@authorpky
@Controller
publicclassJumpControllerextendsBaseResultController{
*跳轉(zhuǎn)主頁(使用template模板引擎)
*@return要轉(zhuǎn)發(fā)到指定頁面的相對地址(相對于templates)
@GetMapping("html/index")
publicStringforwordIndexHtml(){
return"schdule/index.html";
另外,引入了引入thymeleaf模板引擎后,上述addViewControllers(ViewControllerRegistryregistry)方法也能在IDEA中正
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政管理???025年全方位試題及答案
- 2025年護士執(zhí)業(yè)考試心理素質(zhì)試題及答案
- 藥品評估中的臨床證據(jù)應用試題及答案
- 行政法與社會公眾參與試題及答案
- 醫(yī)學倫理與法律問題的試題及答案解析
- 護理素養(yǎng)提升課程建議試題及答案
- 行政法與社會公平的關(guān)系試題及答案
- 行政管理文化概論學習階段中的試題及答案
- 2025年執(zhí)業(yè)醫(yī)師考試呼吸系統(tǒng)疾病試題及答案
- 中醫(yī)內(nèi)科學-肺癰課件
- 2024年時事政治考點大全(173條)
- 施工場地治安保衛(wèi)管理計劃
- 6《夜間飛行的秘密》(課件)統(tǒng)編版語文四年級上冊
- 2024年秋季新人教版八年級上冊物理全冊教案(2024年新教材)
- 高支模專項施工方案(專家論證后)
- 解讀國有企業(yè)管理人員處分條例課件
- 火力發(fā)電廠汽輪機控制系統(tǒng)技術(shù)條件
- 2024年湖南衡陽八中直選生綜合能力測試物理試題打印版
- 公司注銷解除合同判決書
- 設備使用培訓計劃方案
- 江蘇省南京市秦淮區(qū)2023-2024學年八年級下學期歷史期末測試卷
評論
0/150
提交評論