?
首先,我們要知道虛擬目錄的好處。虛擬目錄不同于原始的Tomcat運行方式,原始的方式是把項目拷貝到webapps下,然后啟動tomcat,就可以訪問webapps下的項目。我們使用eclipse配置tomcat,實際上的原理也是這種方式。
但這種方式的弊端在于,webapps下的項目不是最新的動態,一旦我們修改了eclipse工作目錄下的項目,并不能立刻的反應到tomcat/webapps下。所以我們不得不編譯項目后,清除webapps下的緩存,甚至要移除項目,然后在放進去。這樣來回折騰,大大降低了工作效率。我們只要改動一個小地方,就要重復的進行一次上面的工作。
聰明的人,總是懶惰的。我們想到能不能改變一下當前的方式,有一種更好的方式呢?這時候,虛擬目錄就浮現出來。
虛擬目錄的作用是把Web的發布目錄直接定位到eclipse工作目錄下,實現實時更新,實時使用。
?
要配置虛擬目錄,我們需要在Tomcat/conf/catalina/localhost下根據項目命名“項目名.xml”,里面的內容:
<? 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 >
?
屬性解釋:
path:網絡訪問名
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項目,然后在修改項目的一些屬性:
1、去掉Project--Build Automatically(自動構建)
2、屬性--Builders--除了Java Builder全部勾去(這樣項目構建速度大大加快)。
3、屬性--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的名相同!
?
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
