Tomcat设置虚拟目录的方法, 不修改server.xm

在tomcat文件夹的 conf\catalina\localhost增长project .xml文件
文件内容:
<Context path="/project" reloadable="true" docBase="E:\javastudio\oob" workDir="E:\javastudio\oob\work" />
  • docBase是项目文件夹的web-inf文件夹的上一层目录
  • workDir是指Tomcat解析Jsp转换为Java文件,并编译为class存放的文件夹,设置 在项目文件夹里面,能够避免移植到其余地方首次读取jsp文件须要从新解析 。通常格式:项目文件夹\work
  • reloadable是指能够从新加载,通常设置为true,方便使用,不须要常常重启Tomcat。
之后启动Tomcat,在浏览器输入 http://localhost:8080/project就能访问该项目的welcome文件。
 
***************
为何要不修改server.xml呢?在Tomcat6的doc帮助文档中,官方是不提倡修改 server.xml来添加虚拟目录的!
       而我认为,以上使用的方法,很是方便于项目的移植,移植后,只有修改docBase和workDir的值就好了,甚至能够去掉workDir这个属性!
 

*************** java


又发现了一篇不错的文章 web

转自:http://blog.csdn.net/yiluoak_47/article/details/12503737 浏览器


首先,咱们要知道虚拟目录的好处。虚拟目录不一样于原始的Tomcat运行方式,原始的方式是把项目拷贝到webapps下,而后启动tomcat,就能够访问webapps下的项目。咱们使用eclipse配置tomcat,实际上的原理也是这种方式。 缓存

但这种方式的弊端在于,webapps下的项目不是最新的动态,一旦咱们修改了eclipse工做目录下的项目,并不能马上的反应到 tomcat/webapps下。因此咱们不得不编译项目后,清除webapps下的缓存,甚至要移除项目,而后在放进去。这样来回折腾,大大下降了工做 效率。咱们只要改动一个小地方,就要重复的进行一次上面的工做。 tomcat

聪明的人,老是懒惰的。咱们想到能不能改变一下当前的方式,有一种更好的方式呢?这时候,虚拟目录就浮现出来。 网络

虚拟目录的做用是把Web的发布目录直接定位到eclipse工做目录下,实现实时更新,实时使用。 app

 

要配置虚拟目录,咱们须要在Tomcat/conf/catalina/localhost下根据项目命名“项目名.xml”,里面的内容: eclipse

<?xml version="1.0" encoding="UTF-8"?> <Context path="/cecb2b" docBase="E:\workspace\cecb2b\webContent" workDir="E:\workspace\cecb2b\word" reloadable="true" debug="1"></Context>

 

属性解释: webapp

  path:网络访问名 jsp

  docBase:项目实际路径

  wordDir:指定jsp转换为java的存放目录。这样配置,省得移植的时候从新编译jsp

  reloadable:指定当class文件变化的时候,是否从新加载

  debug:是不是调试模式

 

这样,Web发布目录就直接指向了eclipse工做目录下的项目。咱们在eclipse下修改代码,只要一构建,tomcat自动从新加载。咱们就不用来回移除项目了。

 

最后,咱们还能够修改cong/web.xml中的:

<init-param>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>

把false改成true。

 

 最后,咱们须要注意的是,用eclipse建立Web项目,必定要是动态Web项目,而后在修改项目的一些属性:

一、去掉Project--Build Automatically(自动构建)

二、属性--Builders--除了Java Builder所有勾去(这样项目构建速度大大加快)。

三、属性--Java Build Path--Source--项目名/WebContent/WEB-INF/classes

 

 注意,tomcat7.0和以往不一样:

<Context path="/vsearch" docBase="E:/workspace/vsearch2012/WebContent" reloadable="true" debug="5" crossContext="true" /> 

须要注意,xml文件名必须和path的名相同!

相关文章
相关标签/搜索