面试官:您知道tomcat部署项目有几种方式吗?

Posted XP小课堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试官:您知道tomcat部署项目有几种方式吗?相关的知识,希望对你有一定的参考价值。

一 直接将web项目文件件拷贝到webapps目录中二 修改Server.xml文件三 新建xml方式

一 直接将web项目文件件拷贝到webapps目录中

我们一般把项目打成war包 然后放在webapp下 然后点击start脚本启动 war包被自动解压出来 然后部署成功

在这里插入图片描述

二 修改Server.xml文件

修改conf目录下的server.xml  在Host标签下添加标签

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">


        <Context path="/xp" docBase="D:/soft/xp" reloadable ="true" debug="0" privileged="true">
        </Context> 

</Host>

path:虚拟路径

docBase:应用程序的物理路径

privileged:如果是true,则tomcat会检测应用程序的/WEB-INF/lib和/WEB-INF/classes目录的变化,自动装载新的应用程序,在不重启tomcat的情况下改变应用程序,实现热部署;

debug:0表示提供最少的信息,9表示提供最多的信息

三 新建xml方式

在 D:soft omcat6.0apache-tomcat-6.0.14confCatalinalocalhost 目录下新建xp.xml

xml文件内容

 <Context path="/xp" docBase="D:/soft/xp" reloadable ="true" debug="0" privileged="true"> 
 </Context> 

浏览器访问:localhost:8080/xml文件的名称/访问的文件名称

三种方式最终效果一样的:

面试官:您知道tomcat部署项目有几种方式吗?
在这里插入图片描述

有的同学会说 您会的可真多 您说的这些有依据嘛

上tomcat源码:

HostConfig.java

/**
     * Deploy applications for any directories or WAR files that are found
     * in our "application root" directory.
     */

    protected void deployApps() {

        File appBase = host.getAppBaseFile();
        File configBase = host.getConfigBaseFile();
        String[] filteredAppPaths = filterAppPaths(appBase.list());
        // Deploy XML descriptors from configBase
        deployDescriptors(configBase, configBase.list());
        // Deploy WARs
        deployWARs(appBase, filteredAppPaths);
        // Deploy expanded folders
        deployDirectories(appBase, filteredAppPaths);

    }

点关注不迷路:


以上是关于面试官:您知道tomcat部署项目有几种方式吗?的主要内容,如果未能解决你的问题,请参考以下文章

再见面试官:单例模式有几种写法?

当阿里面试官问我:Java创建线程有几种方式?我就知道问题没那么简单

Tomcat有几种部署方式?

面试官问我:创建线程有几种方式?我笑了

面试官问我:创建线程有几种方式?我笑了

面试官:CPU百分百!给你一分钟,怎么排查?有几种方法?