嵌入式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

相关推荐
yuanbenshidiaos1 小时前
c++---------数据类型
java·jvm·c++
向宇it1 小时前
【从零开始入门unity游戏开发之——C#篇25】C#面向对象动态多态——virtual、override 和 base 关键字、抽象类和抽象方法
java·开发语言·unity·c#·游戏引擎
Lojarro1 小时前
【Spring】Spring框架之-AOP
java·mysql·spring
莫名其妙小饼干1 小时前
网上球鞋竞拍系统|Java|SSM|VUE| 前后端分离
java·开发语言·maven·mssql
isolusion1 小时前
Springboot的创建方式
java·spring boot·后端
zjw_rp2 小时前
Spring-AOP
java·后端·spring·spring-aop
Oneforlove_twoforjob2 小时前
【Java基础面试题033】Java泛型的作用是什么?
java·开发语言
TodoCoder2 小时前
【编程思想】CopyOnWrite是如何解决高并发场景中的读写瓶颈?
java·后端·面试
向宇it2 小时前
【从零开始入门unity游戏开发之——C#篇24】C#面向对象继承——万物之父(object)、装箱和拆箱、sealed 密封类
java·开发语言·unity·c#·游戏引擎
小蜗牛慢慢爬行2 小时前
Hibernate、JPA、Spring DATA JPA、Hibernate 代理和架构
java·架构·hibernate