在Tomcat中有四种部署Web应用的方式,简要的概括分别是:

(1)利用Tomcat自动部署

(2)利用控制台进行部署

(3)增加自定义的Web部署文件(%Tomcat_Home%\conf\Catalina\localhost\AppName.xml)

(4)手动修改%Tomcat_Home%\conf\server.xml文件来部署web应用

 

 

第一种方式:利用Tomcat自动部署

       

        利用Tomcat自动部署方式是最简单的、最常用的方式。若一个web应用结构为D:\workspace\WebApp\AppName\WEB-INF\*,只要将一个Web应用的WebContent级的AppName直接扔进%Tomcat_Home%\webapps文件夹下,系统会把该web应用直接部署到Tomcat中。所以这里不再赘述。

 

 

 

第二种方式:利用控制台进行部署

 

        若一个web应用结构为D:\workspace\WebApp\AppName\WEB-INF\*,利用控制台进行部署的方式如下:进入tomcat的manager控制台的deploy区域——在Context path中键入"XXX"(可任意取名)——在WAR or Directory URL:键入D:\workspace\WebApp\AppName (表示去寻找此路径下的web应用)——点击deploy按钮。

          然后在%Tomcat_Home%\webapps路径下将会自动出现一个名为XXX的文件夹,其内容即是D:\workspace\WebApp\AppName的内容,只是名字是XXX而已(这就是前面在Context path键入XXX的结果)。

以上说明利用控制台进行部署的实质仍然是利用Tomcat的自动部署。

 

 

 

第三种方式:增加自定义的Web部署文件

 

        若一个web应用结构为D:\workspace\WebApp\AppName\WEB-INF\*,这种部署方式稍微复杂一点,我们需要在%Tomcat_Home%\conf路径下新建一个文件夹catalina——再在其中新建一个localhost文件夹——最后再新建一个XML文件,即增加两层目录并新增XML文件:%Tomcat_Home%\conf\Catalina\localhost\web应用配置文件.xml ,该文件就是部署Web应用的配置文件。例如,我们新建一个%Tomcat_Home%\conf\Catalina\localhost\XXX.xml,  该文件的内容如下:

[html] view plaincopy

  1. <Context path="/XXX" reloadable="true" docBase="D:\workspace\WebApp\AppName" workDir="D:\workspace\WebApp\work"/>  

注意:

      (1)以上代码中的Context path即指定web应用的虚拟路径名。docBase指定要部署的Web应用的源路径。

        其实开发者可以使用安装有Tomcat插件eclipse自动创建部署文件来部署Web应用而不必再手动建立该文件,方法如下: 

1. 打开Eclipse——打开菜单栏window选择preference(首选项)——左侧选择Tomcat,如下图示:

        2. 可以看到上图中高亮画出的Context declaration mode(Context 声明模式)中选择以Context files增加自定义部署文件的形式部署web应用——然后Contexts directory中指定上述文件的上级目录(即%Tomcat_Home%\conf\Catalina\localhost )——点击Apply或OK。

        3. 完上述步骤,再选中Web项目右键点击properties(属性)——选择右侧的Tomcat ,如下图所示:

      4. 勾上"Is a Tomcat project"前的checkbox,将项目关联至Tomcat。

在Context name中填入XXX,即Web应用自定义部署文件名和Context path名。

在Subdirectory to set as web application root (optional)中填入要部署的Web应用的实际路径(即WEB-INF上级目录)。

注意:Eclipse会自动地将workdir设置在Workspace\WebApp\work下。

如此便自动创建了%Tomcat_Home%\conf\Catalina\localhost\XXX.xml 文件。启动Tomcat 即可自动部署Web应用。

 

 

 

第四种方式:手动修改%Tomcat_Home%\conf\server.xml文件来部署web应用

 

%Tomcat_Home%\conf\server.xml文件并在其中增加以下元素:

[html] view plaincopy

  1. <Context docBase="D:\workspace\WebApp\AppName" path="/XXX" debug="0" reloadable="false" />  

         然后启动Tomcat即可。

         当然如果使用Eclipse,在Eclipse中的设置也有改变:打开菜单栏window选择preference(首选项)——左侧选择Tomcat ——可以看到上图中高亮画出的Context declaration mode(Context 声明模式)中选择以Server.xml文件来部署web应用。

         启动Tomcat即可。

 

 

 

omcat发布项目的方式大致有三种,但小菜认为通过在tomcat的conf/Catalina/localhost目录下添加配置文件,来发布项目,是最佳选择。

      因为这样对tomcat的入侵性最小,只需要新增一个配置文件,不需要修改原有配置;而且支持动态解析,修改完代码直接生效(修改配置除外)。

      但是网上关于这种方法的介绍很简单,小菜来补充一下。

 

    1.直接在eclipse中添加一个server,添加过程中指明tomcat的路径即可。

    2.在tomcat服务器的conf\Catalina\localhost目录下创建一个xml文件(路径找不到就自己创建),内容如下:

    <Context path="/TestPro" docBase="D:\javaProject\TestPro\WebContent" debug="0" privileged="true">

    </Context>

path是指项目的发布路径,也就是访问路径,假如像上边那样填写,就要这样访问:http://localhost:8080/ TestPro /index.jsp;docBase是指项目的WebContent(eclipse)或WebRoot(myeclipse)目录,很好理解,你的项目最终发布,就是发布的这个目录,通过配置,直接让tomcat指向这个目录,这样就可以运行项目啦。

注意:xml的文件名一定要和发布路径一致!在本例中xml文件名必须为:TestPro

    3.在eclipse中启动tomcat,项目即可启动。

 

  上边是比较常见的用法,但很多时候,我们希望把项目发布到tomcat根目录,这样就不用输入冗长的发布路径,直接输入域名就可以访问了。

  用这种方法把项目发布tomcat根目录,注意事项如下:

 

    1.为了保险起见,删掉tomcat服务器中的webapps目录下的ROOT文件夹。

    2.将xml中的path设成空(path="")。

    3.将xml文件名改为ROOT(ROOT.xml)。

 

  这样就可以将项目发布到tomcat根目录了,希望本文对大家有帮助。