首先不建議整合JSP哈,spring boot 對jsp的支持力度不大。 內置tomcat不支持jsp。
注意:在創建項目時候一定是war類型的,而不是跟之前那個freemarker那種jar類型。
廢話不多說,直接動手。
pom依賴如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.toov5.jsp</groupId> <artifactId>springbootjsp</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.0.RELEASE</version> </parent> <dependencies> <!-- SpringBoot 核心組件 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> </dependency> </dependencies> </project>
application.properties配置文件:
這種寫法是寫死的哈,不要改動!springboot默認讀取的就是這個前綴名字和后綴名字!而且會默認讀取application.properties這個文件 和 .yml文件
spring.mvc.view.prefix=/WEB-INF/jsp/ spring.mvc.view.suffix=.jsp
Java類代碼:
package com.toov5.jsp; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class IndexController { @RequestMapping("/jsp") public String index(){ return "index"; } }
需要頁面跳轉而不是json字符串,所以@Controller注解
然后返回的index會被加上前綴后綴,去找資源。
注意不要把JSP放在resource下面!jsp可能被訪問到!放在webapp下面就好。也就是在webapp目錄下面遞歸創建
/WEB-INF/jsp/目錄如上述配置所寫
最后的目錄結構如下圖所示:
運行,訪問:
是不是很簡單呀~
<!-- 使用 jsp 必要依賴 -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
不從另外一種web開發