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

成功跳转

相关推荐
刘立军43 分钟前
RESTful 与契约优先:规范接口定义,统一接口设计范式
后端·架构·ai编程
JavaGuide1 小时前
GitHub 4.5 万+ Star!GitNexus 把代码仓库变成了 Claude Code / Codex 能查询的知识图谱
后端·ai编程
子兮曰2 小时前
DeepSeek Harness 架构深潜:一个把 Agent 运行时做成纯插件树的开源 Harness
前端·后端·deepseek
子兮曰3 小时前
AI Agent 完整入门指南:从 LLM 到生产落地的 30+ 个核心概念
前端·后端·agent
渔夫正在掘金3 小时前
Cordis 插件热插拔能力深度解析
后端·node.js
不爱编程的小九九3 小时前
小九源码-springboot004-springboot智能阅读推荐系统
java·spring boot·后端
码事漫谈3 小时前
为什么调试模式不崩溃,打包后却崩溃了?
后端
智驭未来掌门人4 小时前
利用FFmpeg快速实现一个RTSP推流服务器
后端
垚垚学技术_聚焦云原生4 小时前
K8s Pod 完整生命周期详解
后端
JavaGuide4 小时前
Github 史诗级故障,与此同时,Cursor 版「GitHub」正式上线!
前端·后端