您好,登錄后才能下訂單哦!
本篇內容介紹了“SpringBoot如何在項目中使用JSP”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
對比以前的項目結構 main 目錄下多了 webapp 目錄,用來存放目錄 jsp 文件。
spring-boot-jsp +-src +- main +- java +- resources +- webapp +- WEB-INF +- jsp +- welcome.jsp +- test +-pom.xml
spring.mvc.view.prefix: /WEB-INF/jsp/ spring.mvc.view.suffix: .jsp
spring-boot-starter-web 包依賴了 spring-boot-starter-tomcat 不需要再單獨配置
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> </dependency>
<!DOCTYPE html> <html lang="en"> <body> Time: ${time} <br> Message: ${message} </body> </html>
@Controller public class WelcomeController { @GetMapping("/") public String welcome(Map<String, Object> model) { model.put("time", new Date()); model.put("message", "hello world"); return "welcome"; } }
cd 進入項目根目錄下
cd ...\spring-boot-jsp
執行以下啟動命令
mvn clean spring-boot:run
啟動完成后,在瀏覽器訪問 http://localhost:8080/
Time: Sat Aug 11 13:26:35 CST 2018 Message: hello world
如果像其他項目一樣,直接在 IDEA 中通過 main 方法來啟動項目,在訪問測試的時候會出現 404 not found。
這是因為 Spring Boot JSP 項目需要額外進行一個設置:選擇 Edit Configurations 選項,打開 Run/Debug Configurations:
設置 Working directory 的路徑為項目根路徑:
然后重啟項目就可以正常的訪問到頁面內了。
在 pom.xml 里設置打包格式為 war。
<packaging>war</packaging>
排除內嵌的 Tomcat 依賴;打包時排除掉內嵌的 Tomcat 依賴,避免 jar 包沖突
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 排除內置容器,排除內置容器導出成 war 包可以讓外部容器運行spring-boot項目--> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency>
Servlet 的支持
Spring Boot 項目必須實現 SpringBootServletInitializer 接口的 configure() 方法才能讓外部容器運行 Spring Boot 項目,啟動類同目錄下創建 ServletInitializer 類:
public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(JspApplication.class); } }
打包發布,在項目根目錄執行 maven 命令:
mvn clean package
將 war 包發布到 Tomcat
Spring Boot 支持使用內嵌的 Tomcat 來運行 JSP; 也支持將項目打包成 War 包部署到獨立的 Tomcat 中。實際項目中推薦使用單獨的 Tomcat 來部署使用 JSP 的項目,內嵌的 Tomcat 還不是很穩定,偶爾會出現訪問遲緩的現象
“SpringBoot如何在項目中使用JSP”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。