SpringBoot配置外部Servlet

1.创建 JavaMaven 项目

创建 JavaMavenWeb 项目会更简单,不需要设置打包方式和创建 WEB-INF 目录

2.修改配置文件 pom.xml

(1)导入父工程

(2)设置打包方式为 war 包

(3)导入 SpringBoot 相关依赖

(4)指定嵌入式 Tomcat 作用域指定为 provided

3.创建 webapp

(1)创建 WEB-INF 和pages 目录

(2)创建 web.xml 配置文件

XML 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<web-app
        version="4.0"
        xmlns="http://xmlns.jcp.org/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd">
    <display-name>Archetype Created Web Application</display-name>

</web-app>

(3)创建 hello.jsp 界面

javascript 复制代码
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>success</title>
</head>
<body>
<h1>success222</h1>
<h1> 外置 Servlet 容器实现 </h1>
</body>
</html>

4. 配置 Tomcat

File ---》Project Structure ---》Modules 中检查打包位置

5.配置Tomcat

6.创建三级包并启动类

Controller 类

java 复制代码
package com.goose.controller;

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

@Controller
@RequestMapping("/say")
public class HelloTomcat {
    @RequestMapping("/hello")
    public String hello(){
        return "hello";
    }
}

启动类

java 复制代码
package com.goose;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class MyselfTomcat1 {
    public static void main(String[] args) {
        SpringApplication.run(MyselfTomcat1.class,args);
    }
}

7.创建 SpringBoot 配置文件

java 复制代码
spring:
  mvc:
    view:
      prefix: /WEB-INF/pages/
      suffix: .jsp

8.创建配置类,并调用configure方法

java 复制代码
package com.qcby;

import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

public class ServletInitializer extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(Demo1.class);
    }

}

启动Tomcat

成功跳转

相关推荐
猿究院_夏燊4 小时前
Spring Bean 生命周期
java·后端·spring
CCblandy6 小时前
雪花 ID 四个边界实测:时钟回拨重号 500 个,前端 JSON.parse 直接丢精度
后端·python·算法·性能优化·架构
我是人✓6 小时前
SpringBoot项目的五种创建方式
java·spring boot·后端
念念清晰7 小时前
000-OpenJDK17 源码构建:MacOS环境(M芯片)
java·后端
来福猿8 小时前
SpringCloud Config 源码分析:配置拉取、刷新与多环境管理
后端·spring·spring cloud
古法老登瞎折腾9 小时前
大数据智能运维实战(一):机器和任务数据都有了,如何用 MCP 搭建运维助手?
大数据·运维·spring boot·spring ai·mcp
企业数字化笔记10 小时前
多租户配额怎么控制?用量口径、并发预留与超额处理的实现方法
java·数据库·spring boot
IT_陈寒10 小时前
React组件莫名重渲染?你可能忘了这个小细节
前端·人工智能·后端
用户98883218717410 小时前
给 .NET 网络调用设定“预算”:用 CancellationTokenSource.CancelAfter 处理超时取消
后端
清风儿32910 小时前
一块不会说话的电表,把我们折腾了半个月
后端