1.靜態部署(服務器啟動之前部署)
a.將項目放在webapps下,就可以了
b.更改$CATALINA_HOME\conf\server.xml文件,在<host>標簽內添加<Context>標簽,內容如下:
<Context docBase="D:\javaspace\sfa\WebRoot" reloadable="false" path="/sfa123"/> ,不需要將文件放置webapp下,其中reloadable="false"表示當應用程序中的內容發生更改之后服務器不會自動加載,這個屬性在開發階段通常都設為true,方便開發,在發布階段應該設置為false,提高應用程序的訪問速度。docBase為路徑,可以使用絕對路徑,也可以使用相對路徑,相對路徑相對於webapps。path屬性的值是訪問時的根地址。訪問地址如下:http://localhost:8080/sfa123/
c.<Context docBase="D:\javaspace\sfa\WebRoot" reloadable="false" />大家可能發現和第二種方式差不多,但是缺少了path屬性,這種方式服務器會使用.xml的名字作為path屬性的值。訪問地址如下:http://localhost:8080/sfa/(沒用到過)這種方式和第二種方式差不多,但是不是在Server.xml文件中添加Context標簽,而是在$CATALINA_HOME\conf\Catalina\localhost中添加一個xml文件,如sfa.xml,內容如下:
我們剛才是將 sfa文件夾部署在了服務器中,我們知道可以將 Web 應用程序的內容打成 *.war 包,然后在部署在服務器上。
jar包生成的兩種方式
項目名鼠標右擊export,選擇java EE 下面的war file 類型,然后導出jar包 或者 dos命令下進入項目文件下,鍵入如下命令: jar cvf sfa.war */.
(1) 將剛才有 docBase="D:\javaspace\sfa\" 更改為docBase="D:\javaspace\sfa.war"
(2) 或者直接將其拷貝到 webapps下也可以。
重新啟動服務器就可以將 sfa.war 部署為一個 Web 應用程序了。
如果你夠細心的話你會發現,服務器將 sfa.war 文件解開,並且在 webapps 下面又生成了一個sfa 文件夾,然后把 sfa.war 的內容拷貝到里面去了。
我們可以通過以下方式取消自動解包,配置方式如下:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<!-- 將其中的 unpackWARs=”true” 改成 false 就 ok 了 –>
<Context …. />
</Host>
2.動態部署

Context Path(option) :中輸入/sfa
XML Configration file URL:中要指定一個.xml文件,比如我們在F:\下建立一個sfa.xml文件,內容如下:
<Context reloadable="false" />docBase不用寫了,因為在下一個文本框中填入的路徑就是的。或者更簡單點,這個文本框什么都不填。
WAR or Directory URL:中鍵入D:\javaspace\sfa\WebRoot或者C:\Users\andy\Desktop\sfa.war都可以,然后點擊Deploy按鈕,看看上面是不是已經看到了你web應用程序,名字就是你Context Path(option):中的名字。
如果你部署.war文件還有更加簡單的方式,下面還有個Select WAR file uploae點擊瀏覽選擇.war文件,然后點擊Deploy也可以。
