實現spring boot 支援jsp
我們都知道springboot專案建立之後在web依賴之中已經內嵌了tomcat 即實現了對servelet的支援,但是官方的前端模板是themleaf 不建議使用jsp 因為jsp效率比較低. 而如果我們想使用jsp 那麼需要引入支援jsp的依賴:
注意: jsp頁面的路徑必須是在webapp下面 themleaf的預設跟路徑是在sources/templates下面; 還有配置application.property中 配置 spring.mvc.view.prefix=/ spring.mvc.view.suffix=.jsp
<dependency> <!-- 支援jsp的依賴-->
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<! --jsp的標籤庫支援-->
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>jstl-api</artifactId>
<version>1.2</version>
</dependency>
之所以scope用的是provided 即在本地執行的時候有效, 是因為在maven-plugin 進行編譯的時候會自動加入這個依賴如果需要的話.
一般在war包時對內嵌的tomcat進行如下處理:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>