嵌入式tomcat和实现使用嵌入式tomcat映射静态资源

1,嵌入式tomcat

嵌入式Tomcat是指将Tomcat服务器嵌入到应用程序中,以便应用程序可以自行启动和管理Tomcat服务器。通过嵌入式Tomcat,可以将Web应用程序打包成一个可执行的JAR文件,方便部署和运行。

嵌入式Tomcat的主要特点包括:

  1. 简化部署:将Tomcat服务器嵌入到应用程序中,无需单独安装和配置Tomcat服务器。
  2. 独立运行:应用程序可以作为一个独立的进程运行,不依赖于外部的Tomcat服务器。
  3. 灵活性:可以通过代码来配置和管理Tomcat服务器,可以根据应用程序的需求进行自定义配置。
  4. 轻量级:相比于传统的独立安装的Tomcat服务器,嵌入式Tomcat更加轻量级,占用资源更少。

使用嵌入式Tomcat可以方便地将Web应用程序打包成一个可执行的JAR文件,并通过命令行或脚本启动应用程序。在应用程序启动时,嵌入式Tomcat会自动加载并部署Web应用程序,提供HTTP服务。

从Tomcat5.0开始提供和支持Embeded版本,即最简化Tomcat Server。Tomcat和Embedded Tomcat版本是同步发布的,即我们导入tomcatmaven依赖时选择version时可以根据tomcat的版本来选择。

2,嵌入式tomcat映射静态资源

嵌入式tomcat的代码方式其实跟他的server.xml配置文件差不多。想了解server.xml可以看一下这篇文章

java 复制代码
public class TomcatEmbed {
    public static void main(String[] args) throws LifecycleException {
        Tomcat tomcat = new Tomcat();
		//创建service,对应server.xml的<service>标签
        Service service = new StandardService();
        //创建Connector ,对应server.xml的<Connector>标签
        Connector connector = new Connector();
        connector.setPort(8000);
		service.addConnector(connector);

		//创建Host,对应server.xml的<Host>标签
        StandardHost host = new StandardHost();
        host.setAutoDeploy(false);
        host.setName("localhost");

		//创建Engine ,对应server.xml的<Engine>标签
        Engine engine = new StandardEngine();
        engine.setDefaultHost("localhost");
        engine.addChild(host);
        service.setContainer(engine);

        tomcat.getServer().addService(service);

        tomcat.addWebapp(host,"/meet","E:\\test");
		//启动tomcat
        tomcat.start();
        tomcat.getServer().await();
    }
}

访问 http://localhost:8000/meet/2008032.jpg

相关推荐
czlczl2002092517 小时前
OAuth 2.0 解析:后端开发者视角的原理与流程讲解
java·spring boot·后端
颜淡慕潇17 小时前
Spring Boot 3.3.x、3.4.x、3.5.x 深度对比与演进分析
java·后端·架构
g***557517 小时前
Java高级开发进阶教程之系列
java·开发语言
阿达King哥17 小时前
在Windows11下编译openjdk 21
java·jvm
shark-chili18 小时前
从操作系统底层浅谈程序栈的高效性
java
不知疲倦的仄仄18 小时前
第二天:深入理解 Selector:单线程高效管理多个 Channel
java·nio
期待のcode18 小时前
Java虚拟机栈
java·开发语言·jvm
珂朵莉MM18 小时前
全球校园人工智能算法精英大赛-产业命题赛-算法巅峰赛 2025年度画像
java·人工智能·算法·机器人
芒克芒克18 小时前
本地部署SpringBoot项目
java·spring boot·spring
cute_ming18 小时前
关于基于nodeMap重构DOM的最佳实践
java·javascript·重构