SpringBoot整合JSP(内置Tomcat启动与外部Tomcat部署)

版权声明:本文为 小异常 原创文章,非商用自由转载-保持署名-注明出处,谢谢!
本文网址:https://blog.csdn.net/sun8112133/article/details/106936297







我在之前发布的 《Spring Boot 入门学习笔记》 中写过关于 Spring Boot 整合 JSP 开发 的博客,在那篇博客中使用的是外部 Tomcat 部署的方式。

在本篇博客中会介绍另外一种整合 JSP 的常用方法 —— 使用内置 Tomcat 启动方式,当然也会对 外部 Tomcat 部署 的方式作简单总结叙述。

本篇博客中的代码链接:https://download.csdn.net/download/sun8112133/12545932


一、内置 Tomcat 启动(推荐)

使用 内置 Tomcat 启动 的方式来整合 JSP,我们可以直接通过 Spring Boot 启动类来直接启动这个项目,不需要配置任何东西,下面我为大家演示一个小例子,帮助大家快速掌握 内置 Tomcat 启动 的这种方式。

1、新建 Spring Boot 项目

新建SpringBoot


2、引入依赖信息

使用过 Spring Boot 的同学都知道其已内置 Tomcat(spring-boot-starter-web),无需打 war 包,打成 jar 包直接运行。

但是由于 Spring Boot 自带的 Tomcat 并没有携带 tomcat-embed-jasper 的依赖,这个依赖是对 JSP 的支持,要整合时我们需要手动引入它。

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

3、创建 Controller,返回 JSP 视图

@Controller
public class HelloHandler {
	@GetMapping("/index")
	public String index(){
		System.out.println("index");
		return "index";
    }
}

4、配置 application.yml

application.yml 配置文件中配置视图解析器和服务器端口号。

server:
  port: 8888     # 配置端口号
spring:
  mvc:
    # 配置视图解析器
    view:
      prefix: /
      suffix: .jsp

5、最终目录结构

内置目录结构


6、测试

运行 Application 启动类,在浏览器地址栏进行测试。

测试1



二、外部 Tomcat 部署

1、新建 Spring Boot 项目,打成 War 包

和之前新建 Spring Boot 项目一样,只需要将 jar 改为 war 即可。大家会发现在 pom.xml 文件多了以下依赖:

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-tomcat</artifactId>
	<scope>provided</scope>
</dependency>

2、建立基本的 Web 项目所需要的目录结构

Web项目目录结构

注: 其中 WEB-INF 目录是必需的,而 WEB-INF 目录下的 web.xml 是不需要写的,因为 Spring Boot 会自动配置。


3、创建 Controller,返回 JSP 视图

@Controller
public class HelloHandler {
	@GetMapping("/index")
	public String index(){
		System.out.println("index");
		return "index";
    }
}

4、配置 application.yml

application.yml 配置文件中配置视图解析器。

spring:
  mvc:
    # 配置视图解析器
    view:
      prefix: /
      suffix: .jsp

5、新建外部 Tomcat 服务器,并部署项目

我们需要和原先不用 Spring Boot 时一样,创建 Tomcat 服务器,然后直接部署到服务器上即可。

部署服务器


6、最终目录结构

外部目录结构


7、测试

注意此时不要运行 Spring Boot 的启动类,和之前一样直接开始服务器即可,此外置的 Tomcat 实例记得是需要写项目名的哦~

测试2



博客中若有不恰当的地方,请您一定要告诉我。前路崎岖,望我们可以互相帮助,并肩前行!



猜你喜欢

转载自blog.csdn.net/sun8112133/article/details/106936297
今日推荐