Spring Boot MVC 使用 JSP 作为模板

Spring Boot 默认使用 Thymeleaf 作为模板引擎,直接在 template 目录中存放 JSP 文件并不能正常访问,需要在 main 目录下新建一个文件夹来存放 JSP 文件,而且需要添加依赖。

1. 创建目录存放 JSP 文件

首先在 main 目录下新建一个 webapp 目录(任何名称都可以),然后在 Project Structure 中将它添加到 Web Resource Directory。

Spring Boot MVC 使用 JSP 作为模板

2. 添加依赖

在 pom.xml 中添加依赖以支持 JSTL 和 JSP:

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
</dependency>

3. MVC 配置

编辑 application.yml:

spring:
  mvc:
    view:
      suffix: .jsp
      prefix: /view/

设置前缀为 JSP 文件存放的相对路径(这里将 JSP 文件放在 view 目录),后缀为 .jsp

4. 编写控制器和页面

IndexController


import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class IndexController {

    @RequestMapping("/")
    public ModelAndView index() {
        ModelAndView index = new ModelAndView("index");
        index.addObject("message", "Hello, Spring Boot!");
        return index;
    }
}

index.jsp:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Index</title>
</head>
<body>
<h1>Spring Boot with JSP</h1>
<h2>${message}</h2>
</body>
</html>

5. 访问页面

访问 http://localhost:8080/

Spring Boot MVC 使用 JSP 作为模板

上一篇:异常处理器


下一篇:Spring MVC的运行原理