Java Web开发Tomcat中三种部署项目的方式
第一种方式:在tomcat中的conf目录中,在中的,<host/>节点中添加: <Context path="/hello" docBase="D:\" debug="0" privileged="true"> </Context> 至于Context 节点属性,可详细见相关文档。 
第二种方式:将web项目文件件拷贝到webapps 目录中。 
第三种方式:很灵活,在conf目录中,新建 Catalina(注意大小写)\localhost目录,在该目录中新建一个xml文件,名字能够随意取,只要和当前文件中的文件名不重复就好了,该xml文件的内容为: <Context path="/hello" docBase="D:\" debug="0" privileged="true"> </Context> 第3个方式有个长处,能够概念别名。服务器端运行的项目名称为path,外部访问的URL则利用XML的文件名。那个方式很方便的隐藏了项目的名称,对一些项目名称被固定不能改换,但外部访问时又想换个路径,超级有效。 第二、3还有长处,能够概念一些个性配置,如数据源的配置等。 
 
一、直接放到Webapps目录下   
Tomcat的Webapps目录是Tomcat默许的应用目录,当服务器启动时,会加载所有那个目录下的应用。也能够将JSP程序打包成一个war包放在目录下,服务器会自动解开那个war包,并在那个目录下生成一个同名的文件夹。
eclipse安装教程tomcat
一个war包就是有特性格式的jar包,它是将一个Web程序的所有内容进行紧缩取得。
具体如何打包,能够利用许多开发工具的IDE环境,如Eclipse、NetBeans、ant、JBuilder等。
也能够用cmd 命令:jar -cvf  package.*;
乃至能够在程序执行中打包:try{    string strjavahome = ("");   
strjavahome = (0,(\\))+"\\bin\\";     
().exec("cmd /c start "+strjavahome+"jar cvf  c:\\\\webapps\\root\\*");    }  catch(exception  e){
    webapps那个默许的应用目录也是能够改变。
打开Tomcat的conf目录下的文件,到下面内容:<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeloy="true" xmlValidation="falase" xmlNamespaceAware="false">
二、在中指定   
在Tomcat的配置文件中,一个Web应用就是一个特定的Context,能够通过在中新建Context里部署一个JSP应用程序。
打开文件,在Host标签内建一个Context,内容如下。<Context path="/myapp" reloadable="true" docBase="D:\myapp" workDir="D:\myapp\work"/>    其中path是虚拟路径,docBase是JSP应用程序的物理路径,workDir是那个应用的工作目录,寄存运行是生成的于那个应用相关的文件。
3、创建一个Context文件   
以上两种方式,Web应用被服务器加载后都会在Tomcat的conf\catalina\localhost目录下生成一个XML文件,
其内容如下:<Context path="/admin" docBase="${}/server/webapps/admin" debug="0" priv
ileged="true"></Context>能够看出,文件中描述一个应用程序的Context信息,其内容和中的Context信息格式是一致的,文件名即是虚拟目录名。
您能够直接成立如此的一个xml文件,放在Tomcat的conf\catalina\localhost目录下。例子如下:注意:删除一个Web应用同时也要删除webapps下相应的文件夹祸中相应的Context,还要将Tomcat的conf\catalina\localhost目录下相应的xml文件删除。不然Tomcat仍会岸配置去加载。 
tomcat部署web应用主要有以下几种方式:
1.拷贝你的WAR文件或你的web应用文件夹(包括该web的所有内容)到$CATALINA_BASE/webapps目录下。
2.为你的web服务成立一个只包括context内容的XML片断文件,并把该文件放到$CATALINA_BASE/webapps目录下。那个web应用本身能够存储在硬盘上的任何地方。这种context片断提供了一种便利的方式来部署web应用,你不需要编辑,除非你想改变缺省的部署特性,安装一个新的web应历时不需要重启动Tomcat。
3. 同方式2,只是将context片断放在CATALINA_BASE\conf\Catalina\localhost目录下.这种方式例如法2>要有效,笔者通过量次实验发觉方式2不如后面这种方式好用.前者多次出现系统打不开的情形.
4.直接在中</Host>前加上Context片断,利用这种方式时,tomcat会自动在CATALINA_BASE\conf\Catalina\localhost目录下生成一个文件片断.方式同方式3具有一样效果.这种方式需要将ROOT目录删除才行.
另外,为了让tomcat只运行conf/中指定的web应用,能够有以下几种办法
实现一:     
1)将要部署的WEB应用放在webapps之外的路径, 并在相应的context中的docBase指定.     
2)删除webapps中的所有文件夹, 和conf/catalina/localhost下所有xml文件.    注: webapps是中的Host元素的appBase属性的值. 
实现二:     
1) 修改中Host元素的属性, 添加或修改: deployXML="false" deployOnStartup="false" autoDeploy="false"     
2) 含义:    deployXML="false": 不部署conf/catalina/localhost下的xml相应的WEB应用    deployOnStartup="false" : tomcat启动时, 不部署webapps下的所有web应用    autoDeploy="false": 避免tomcat在扫描改动时, 再次把webapps下的web应用给部署进来.