SpringBoot中使用jsp,需要新建webapp目录,该目录存放jsp文件。

Spring Boot中使用JSP_spring

引入依赖

<!--WEB支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
 
<!--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>

application.properties配置

  要支持jsp,需要在application.properties中配置返回文件的路径以及类型

spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp

  

创建WebApp文件夹

新建Springboot项目如果模板要用jsp的话,需要把jsp文件放到webapp下面,这时需要手动创建文件夹,或者把别的项目中的webapp拷贝过来,这时该文件夹是不是能被识别的

Spring Boot中使用JSP_tomcat_02

解决方法:
只需要配置一下,将webapp文件夹关联上就可以了,如下图:

Spring Boot中使用JSP_html_03

控制类

上面步骤有了,这里就开始写控制类,直接上简单的代码,跟正常的springMVC没啥区别:

@RequestMapping("list/{id}")
    public String getOne(@PathVariable("id") Integer id, ModelMap map){
        City city = cityService.getOne(id);
        map.addAttribute("city", city);
        //System.out.println("hell  jsp");
        return "list";
    }

 

jsp页面编写

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
   hello jsp <br/>
    id:${city.id}; <br/>
    name: ${city.name};
</body>
</html>

 

内嵌Tomcat容器运行项目

  启动项目,访问

  Spring Boot中使用JSP_java_04