SpringBoot項目中的視圖解析器問題(兩種)
前言:SpringBoot官網推薦使用HTML視圖解析器,但是根據個人的具體業(yè)務也有可能使用到JSP視圖解析器,所以這里我給大家簡單介紹一下這兩種視圖解析器的具體使用
一、解析成JSP頁面
1.在pom.xml文件中添加相關依賴
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <!-- tomcat的支持--> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> </dependency>
2.在application.properties配置文件中配置前綴與后綴
spring.mvc.view.prefix=/jsp/ spring.mvc.view.suffix=.jsp
注:如果是使用官網的SpringBoot項目,這里可能出現(xiàn)一個小問題,如果不借助任何模板引擎( thymeleaf )的話,JSP頁面放在resources目錄下(包括缺省的幾個子目錄)是訪問不到的!,那么這時候就得自己配置一個目錄去存放JSP頁面
解決方案:
(1)可以在resources目錄下新建一個 META-INF 目錄,然后在 META-INF 目錄下創(chuàng)建一個resources目錄,然后把需要的jsp頁面放在這個目錄下面,接著在application.properties 配置文件中配置一下訪問路徑,就可以訪問到jsp文件了:
(2)在 resources 目錄同級別的目錄下面創(chuàng)建 webapp 目錄,然后把需要的jsp頁面放在webapp目錄下面,也是可以訪問的:
(3)經過測試發(fā)現(xiàn),如果以上兩個目錄都存在,優(yōu)先訪問的是與resources目錄同級別的webapp目錄下的jsp頁面:
(4)使用模板引擎 thymeleaf 來測試一下直接放在 resources 目錄下的templates 目錄下的jsp頁面:
1)在pom.xml中配置模板引擎thymeleaf 依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
2)在 application.properties 文件中配置 thymeleaf 相關屬性值,最后在 templates 目錄下創(chuàng)建 jsp文件就可以了:
二、解析成HTML頁面
1.在pom.xml中引入模板引擎 thymeleaf依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
2.在 application.properties 文件中配置 thymeleaf 相關屬性值,最后在 templates 目錄下創(chuàng)建html文件就可以了:
三、總結
當JSP視圖解析器與模板引擎thymeleaf共存的時候,SpringBoot會默認解析模板引擎thymeleaf的配置。在模板引擎thymeleaf的配置中,如果都不配置的話,會默認解析templates目錄下的HTML文件,即默認前綴為"/templates/",默認后綴為".html",最后強調一點,在SpringBoot中,根據官網推薦,我們最好使用模板引擎和HTML頁面來編寫代碼!
到此這篇關于SpringBoot項目中的視圖解析器問題(兩種)的文章就介紹到這了,更多相關SpringBoot 視圖解析器內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Mybatis返回map集合時,列的順序與select不一致問題
這篇文章主要介紹了Mybatis返回map集合時,列的順序與select不一致問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01springcloud?feign?接口指定接口服務ip方式
這篇文章主要介紹了springcloud?feign?接口指定接口服務ip方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03SpringBoot+MybatisPlus+Mysql+Sharding-JDBC分庫分表
本文主要介紹了SpringBoot+MybatisPlus+Mysql+Sharding-JDBC分庫分表,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03SpringBoot集成itext實現(xiàn)html轉PDF
iText是著名的開放源碼的站點sourceforge一個項目,是用于生成PDF文檔的一個java類庫,本文主要介紹了如何利用itext實現(xiàn)html轉PDF,需要的可以參考下2024-03-03