1. 程式人生 > >Spring Boot -- JSP

Spring Boot -- JSP

Spring Boot -- JSP

1. pom.xml

<!--jsp頁面使用jstl標籤-->
<dependency>
   <groupId>javax.servlet</groupId>
   <artifactId>jstl</artifactId
>
</dependency> <!--用於編譯jsp--> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <!--<scope>provided</scope>--> </dependency>

注意:此種依賴配置是使用的內嵌的tomcat,可以通過執行java程式的方式來啟動,注意打包方式packaging=jar,如果想配置成war還需要別的配置
注意:tomcat-embed-jasper依賴的scope

有新增provided的情況:

  • 右鍵執行啟動類,訪問頁面報404錯誤
  • 使用spring-boot:run執行正常
  • 打包成jar,通過 java -jar demo-0.0.1-SNAPSHOT.jar 執行報錯
  • 打包成war,通過 java -jar demo-0.0.1-SNAPSHOT.war 執行正常

把provided 註釋掉的情況

  • 右鍵執行啟動類,訪問頁面正常
  • spring-boot:run執行 訪問頁面正常
  • 打包成jar,通過 java -jar demo-0.0.1-SNAPSHOT.jar 執行報錯
  • 打包成war,通過 java -jar demo-0.0.1-SNAPSHOT.war 執行正常

2. application.properties

#JSP(SpringMVC)
spring.mvc.view.prefix= /WEB-INF/jsp/
spring.mvc.view.suffix= .jsp

3.建立webapp目錄

在這裡插入圖片描述
注意:/webapp/WEB-INF/jsp 這個目錄是自己手動建立的,預設的spring boot專案不帶此目錄結構


4.controller

@RequestMapping("/index")
public String index(HttpServletRequest request){
    request.setAttribute("name", "spring boot");
    return "index";
}

5. 訪問localhost/index則會請求轉發到index.jsp頁面

Spring Boot已經不推薦jsp,現在spring 推薦Thymeleaf,它的模版檔案就是html,可以直接在瀏覽器開啟


轉載
Spring Boot入門教程(十七): JSP