Springboot使用jsp具體案例解析
步驟 1 : 檢視支援
Springboot的預設檢視支援是Thymeleaf,本知識點記錄如何讓 Springboot 支援 jsp。
步驟 2 : 可執行專案
首先下載一個簡單的可執行專案作為演示:連結
下載後解壓,比如解壓到 E:\project\springboot 目錄下
步驟 3 : pom.xml
增加對JSP支援
<?xml version="1.0" encoding="UTF-8"?> <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.ryan</groupId> <artifactId>springboot</artifactId> <version>0.0.1-SNAPSHOT</version> <name>springboot</name> <description>springboot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- servlet依賴. --> <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> </dependencies> <properties> <java.version>1.8</java.version> </properties> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
步驟 4 : application.properties
在src/main/resources 目錄下增加 application.properties 檔案,用於檢視重定向jsp檔案的位置
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
步驟 5 : HelloController
修改 HelloController,把本來的 @RestController 改為 @Controller。
這時返回"hello"就不再是字串,而是根據application.properties 中的檢視重定向,到/WEB-INF/jsp目錄下去尋找hello.jsp檔案
package com.ryan.springboot.web; import java.text.DateFormat; import java.util.Date; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class HelloController { @RequestMapping("/hello") public String hello(Model m) { m.addAttribute("now",DateFormat.getDateTimeInstance().format(new Date())); return "hello"; } }
步驟 6 : hello.jsp
在main目錄下,新建 -> webapp/WEB-INF/jsp 目錄。
隨後新建 hello.jsp 檔案,在其中使用 EL表示式 顯示放在 HelloController 的model中的當前時間。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
Hi JSP. 現在時間是 ${now}
步驟 7 : 啟動測試
測試地址是:
http://127.0.0.1:8080/hello
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。