本篇内容介绍了“SpringBoot如何在项目中使用JSP”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1. 添加JSP支持之后的项目结构
对比以前的项目结构 main 目录下多了 webapp 目录,用来存放目录 jsp 文件。
spring-boot-jsp
+-src
+- main
+- java
+- resources
+- webapp
+- WEB-INF
+- jsp
+- welcome.jsp
+- test
+-pom.xml
2. 需要在配置文件中指定 jsp 的位置和后缀
spring.mvc.view.prefix: /WEB-INF/jsp/
spring.mvc.view.suffix: .jsp
3. 引入POM依赖
spring-boot-starter-web 包依赖了 spring-boot-starter-tomcat 不需要再单独配置
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
4. 编写jsp页面
<!DOCTYPE html>
<html lang="en">
<body>
Time: ${time}
<br>
Message: ${message}
</body>
</html>
5. 编写后台代码
@Controller
public class WelcomeController {
@GetMapping("/")
public String welcome(Map<String, Object> model) {
model.put("time", new Date());
model.put("message", "hello world");
return "welcome";
}
}
6. 启动并访问页面
cd ...\spring-boot-jsp
mvn clean spring-boot:run
Time: Sat Aug 11 13:26:35 CST 2018
Message: hello world
7. 调试和部署

然后重启项目就可以正常的访问到页面内了。
在单独的tomcat中运行
<packaging>war</packaging>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 排除内置容器,排除内置容器导出成 war 包可以让外部容器运行spring-boot项目-->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
Spring Boot 项目必须实现 SpringBootServletInitializer 接口的 configure() 方法才能让外部容器运行 Spring Boot 项目,启动类同目录下创建 ServletInitializer 类:
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(JspApplication.class);
}
}
mvn clean package
8. 总结
Spring Boot 支持使用内嵌的 Tomcat 来运行 JSP; 也支持将项目打包成 War 包部署到独立的 Tomcat 中。实际项目中推荐使用单独的 Tomcat 来部署使用 JSP 的项目,内嵌的 Tomcat 还不是很稳定,偶尔会出现访问迟缓的现象
“SpringBoot如何在项目中使用JSP”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注天达云网站,小编将为大家输出更多高质量的实用文章!