Java服务器端编程JVM · Java虚拟机原理 · JVM上语言·框架· 生态系统RxJava

Tomcat8的四种部署方式

2021-03-15  本文已影响0人  迦叶_金色的人生_荣耀而又辉煌

上一篇 <<<Tomcat启动流程说明
下一篇 >>>站在微服务架构对Tomcat进行性能调优


1. 直接放入到tomcat webapps目录下

2. 在conf/server.xml目录下 host节点下新增

<Context docBase="/Users/jiangjinrong/Downloads/aaa" path="/mayikt" reloadable="true"/>
docBase表示加载的内容地址 path 访问路径

3. conf\Catalina\localhost目录下创建 jarye.xml

<Context docBase="/Users/jarye/Downloads/aaa" reloadable="true"/>
注意不需要 path 默认是.xml文件名称

4.使用内嵌入Tomcat方式(SpringBoot底层原理实现)

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>5.0.4.RELEASE</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-core</artifactId>
        <version>8.5.28</version>
    </dependency>
    <!-- Tomcat对jsp支持 -->
    <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>tomcat-jasper</artifactId>
        <version>8.5.16</version>
    </dependency>
</dependencies>

public class TomcatTest {
    public static void main(String[] args) throws LifecycleException, ServletException {

        // 创建tomcat服务器
        Tomcat tomcatServer = new Tomcat();
        // 设定端口号
        tomcatServer.setPort(9090);
        // 设置上下文路径
        StandardContext ctx = (StandardContext) tomcatServer.addWebapp("/", new File("src/main").getAbsolutePath());
        // 禁止项目重入加载
        ctx.setReloadable(false);
        // 设置读取class文件地址
        File additionWebInfClasses = new File("target/classes");
        // 设置我们webRoot
        WebResourceRoot resources = new StandardRoot(ctx);
        resources.addPreResources(new DirResourceSet(resources, "/target/classes", additionWebInfClasses.getAbsolutePath(), "/"));
        // 开启我们的tomcat
        tomcatServer.start();
        // tomcat等待接受请求
        tomcatServer.getServer().await();
    }
}
创建项目时候添加archetypeCatalog=internal参数即可

推荐阅读:
<<<Tomcat的底层架构模型
<<<Tomcat启动流程说明
<<<站在微服务架构对Tomcat进行性能调优
<<<Tomcat的AJP连接器漏洞

上一篇下一篇

猜你喜欢

热点阅读