SpringBoot項(xiàng)目中如何訪問(wèn)HTML頁(yè)面
SpringBoot默認(rèn)的頁(yè)面映射路徑(即模板文件存放的位置)為“classpath:/templates/*.html”。靜態(tài)文件路徑為“classpath:/static/”,其中可以存放JS、CSS等模板共用的靜態(tài)文件。
1、將HTML頁(yè)面存放在resources/static目錄下的訪問(wèn)
將HTML頁(yè)面存放在 resources(資源目錄)下的 static 目錄中。
【示例】在static目錄下創(chuàng)建test1.html頁(yè)面,然后在static目錄下創(chuàng)建view目錄,在view目錄下創(chuàng)建test2.html頁(yè)面,實(shí)現(xiàn)在瀏覽器中的訪問(wèn)。項(xiàng)目結(jié)構(gòu)如下圖:
(1)在static目錄下創(chuàng)建test1.html頁(yè)面,頁(yè)面代碼如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測(cè)試頁(yè)面1</title> <meta name="author" content="pan_junbiao的博客"> </head> <body> <h3>測(cè)試頁(yè)面1</h3> <p>您好,歡迎訪問(wèn) pan_junbiao的博客</p> <p>https://blog.csdn.net/pan_junbiao</p> </body> </html>
執(zhí)行結(jié)果:
(2)在static目錄下創(chuàng)建view目錄,在view目錄下創(chuàng)建test2.html頁(yè)面,頁(yè)面代碼如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測(cè)試頁(yè)面2</title> <meta name="author" content="pan_junbiao的博客"> </head> <body> <h3>測(cè)試頁(yè)面2</h3> <p>您好,歡迎訪問(wèn) pan_junbiao的博客</p> <p>https://blog.csdn.net/pan_junbiao</p> </body> </html>
執(zhí)行結(jié)果:
2、將HTML頁(yè)面存放在resources/templates目錄下的訪問(wèn)
將HTML頁(yè)面存放在 resources(資源目錄)下的 templates 目錄中。
【示例】在templates目錄下創(chuàng)建test3.html頁(yè)面,實(shí)現(xiàn)在瀏覽器中的訪問(wèn)。
在templates目錄下創(chuàng)建test3.html頁(yè)面,頁(yè)面代碼如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測(cè)試頁(yè)面3</title> <meta name="author" content="pan_junbiao的博客"> </head> <body> <h3>測(cè)試頁(yè)面3</h3> <p>您好,歡迎訪問(wèn) pan_junbiao的博客</p> <p>https://blog.csdn.net/pan_junbiao</p> </body> </html>
2.1 方式一
解決SpringBoot不能直接訪問(wèn)templates目錄下的靜態(tài)資源(不推薦)
SpringBoot項(xiàng)目下的templates目錄的資源默認(rèn)是受保護(hù)的,沒(méi)有開(kāi)放訪問(wèn)權(quán)限。這是因?yàn)閠emplates文件夾,是放置模板文件的,因此需要視圖解析器來(lái)解析它。所以必須通過(guò)服務(wù)器內(nèi)部進(jìn)行訪問(wèn),也就是要走控制器 → 服務(wù) → 視圖解析器這個(gè)流程才行。同時(shí),存在安全問(wèn)題,比如說(shuō),你把你后臺(tái)的html文件放到templates,而這個(gè)文件夾對(duì)外又是開(kāi)放的,就會(huì)存在安全隱患。
解決方法:在application.yml或者application.properties配置文件中將訪問(wèn)權(quán)限開(kāi)放(不推薦)
application.yml文件配置:
spring: resources: static-locations: classpath:/META-INF/resources/, classpath:/resources/, classpath:/static/, classpath:/public/, classpath:/templates/
application.properties文件配置:
spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,classpath:/templates/
配置完成后,啟動(dòng)SpringBoot,在瀏覽器中輸入地址就可以直接訪問(wèn)templates目錄下的靜態(tài)資源了。
執(zhí)行結(jié)果:
2.2 方式二
通過(guò)Controller控制器層跳轉(zhuǎn)訪問(wèn)的資源(推薦)
在源代碼層中創(chuàng)建controller目錄(控制器層),在controller目錄下創(chuàng)建IndexController(首頁(yè)控制器類(lèi)),項(xiàng)目結(jié)構(gòu)如下圖:
(1)pom.xml文件的配置
注意:一定要添加thymeleaf的依賴(lài)。
<!-- thymeleaf依賴(lài) --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
(2)編寫(xiě)控制器方法
創(chuàng)建IndexController(首頁(yè)控制器類(lèi)),代碼如下:
package com.pjb.springboothtml.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; /** * 首頁(yè)控制器 * @author pan_junbiao **/ @Controller public class IndexController { @RequestMapping("/test3") public String test3() { return "test3"; } }
執(zhí)行結(jié)果:
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- springboot中使用過(guò)濾器,jsoup過(guò)濾XSS腳本詳解
- SpringBoot中使用Jsoup爬取網(wǎng)站數(shù)據(jù)的方法
- springboot2.x使用Jsoup防XSS攻擊的實(shí)現(xiàn)
- springboot訪問(wèn)template下的html頁(yè)面的實(shí)現(xiàn)配置
- springboot用controller跳轉(zhuǎn)html頁(yè)面的實(shí)現(xiàn)
- 詳解如何配置springboot跳轉(zhuǎn)html頁(yè)面
- springboot如何使用thymeleaf模板訪問(wèn)html頁(yè)面
- SpringBoot、Java 使用 Jsoup 解析 HTML 頁(yè)面的詳細(xì)步驟
相關(guān)文章
Java8的default和static關(guān)鍵字的使用講解
今天小編就為大家分享一篇關(guān)于Java8的default和static關(guān)鍵字的使用講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-01-01java實(shí)現(xiàn)頁(yè)面多查詢(xún)條件必選的統(tǒng)一處理思路
這篇文章主要為大家介紹了java實(shí)現(xiàn)頁(yè)面多查詢(xún)條件必選的統(tǒng)一處理思路詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06SpringBoot如何優(yōu)雅的處理重復(fù)請(qǐng)求
對(duì)于一些用戶(hù)請(qǐng)求,在某些情況下是可能重復(fù)發(fā)送的,如果是查詢(xún)類(lèi)操作并無(wú)大礙,但其中有些是涉及寫(xiě)入操作的,一旦重復(fù)了,可能會(huì)導(dǎo)致很?chē)?yán)重的后果,所以本文給大家介紹了SpringBoot優(yōu)雅的處理重復(fù)請(qǐng)求的方法,需要的朋友可以參考下2023-12-12反射機(jī)制:getDeclaredField和getField的區(qū)別說(shuō)明
這篇文章主要介紹了反射機(jī)制:getDeclaredField和getField的區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06java中對(duì)象為null時(shí)的打印輸出方式
這篇文章主要介紹了java中對(duì)象為null時(shí)的打印輸出方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09