您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“JavaWeb的目錄結(jié)構(gòu)和配置”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
JavaWeb目錄結(jié)構(gòu)
Java Resource
src:存放Java源代碼的目錄。
Libraries:存放的是Tomcat及JRE中的jar包。
build:自動(dòng)編譯.java文件的目錄
WebContent(WebRoot):存放的是需要部署到服務(wù)器的文件
MEAT-INF:是存放工程自身相關(guān)的一些信息,元文件信息,通常由開(kāi)發(fā)工具和環(huán)境自動(dòng)生成。
MANIFEST.MF:配置清單文件
WEB-INF:這個(gè)目錄下的文件,是不能被客戶端直接訪問(wèn)的。
classes:存放Java字節(jié)碼文件的目錄。
lib:用于存放該工程用到的庫(kù)。
web.xml:web工程的配置文件,完成用戶請(qǐng)求的邏輯名稱到真正的servlet類的映射。
凡是客戶端能訪問(wèn)的資源(*html或*.jpg)必須跟WEB-INF在同一目錄,即放在Web根目錄下的資源,從客戶端是可以通過(guò)URL地址直接訪問(wèn)的。
Tomcat的目錄結(jié)構(gòu)
bin:存放的是可執(zhí)行文件
conf:存放的是Tomcat服務(wù)器的各種全局配置文件,其中包括server.xml(Tomcat的主要配置文件)、tomcat-users.xml和web.xml等配置文件。
lib:存放tomcat服務(wù)器所需的各種jar文件。
logs:存放Tomcat的日志文件目錄,記錄了Tomcat啟動(dòng)和關(guān)閉的信息,以及異常信息等。
temp:存放Tomcat的臨時(shí)文件,這個(gè)目錄下的東西可以停止后刪除。
webapps:存放web項(xiàng)目的目錄,其中每個(gè)文件夾都是一個(gè)項(xiàng)目。
work:運(yùn)行時(shí)生成的文件,最終運(yùn)行的文件都在這里。通過(guò)webapps中的項(xiàng)目生成的。刪除后再次運(yùn)行會(huì)重新生成。
LICENSE:許可證。
NOTICE:說(shuō)明文件。
Tomcat中conf目錄下的server.xml文件解釋
Server元素:代表了Catalina Servlet容器,它是Tomcat實(shí)例的頂層元素,可包含一個(gè)或多個(gè)元素。
port:指定Tomcat服務(wù)器監(jiān)聽(tīng)shutdown命令的端口,終止Tomcat服務(wù)運(yùn)行時(shí),必須在Tomcat服務(wù)所在的機(jī)器上發(fā)出Shutdown命令,該屬性是必須設(shè)定的。
shutdown:指定Tomcat服務(wù)器運(yùn)行時(shí),發(fā)給Tomcat服務(wù)器的shutdown監(jiān)聽(tīng)端口的字符串。該屬性是必須設(shè)置的。
Service元素:包含一個(gè)元素,以及一個(gè)或多個(gè)元素,這些元素共享同一個(gè)元素。
name:定義Service的名稱
Contentor元素:代表與客戶程序?qū)嶋H交互的組件,它負(fù)責(zé)接收客戶的請(qǐng)求,以及向客戶返回響應(yīng)結(jié)果。
port="8080"
protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
port:端口號(hào)
protocol:協(xié)議
connectionTimeout:超時(shí)時(shí)間,如果設(shè)置為-1,表示不限制連接時(shí)間
redirectPort:指定轉(zhuǎn)發(fā)端口(如果當(dāng)前端口只支持non-SSL請(qǐng)求,在需要安全通信的場(chǎng)合,把客戶端請(qǐng)求轉(zhuǎn)發(fā)到基于SSL的redirectPort的端口)
其他屬性:
enableLookups:如果設(shè)置為true,表示支持域名解析,默認(rèn)為true。
className:指定實(shí)現(xiàn)org.apache.catalina.Connector接口的類
Engine元素:每個(gè)元素只能包含一個(gè)元素,元素處理在同一個(gè)中所有元素接收到的客戶端請(qǐng)求。
name:Engine的名字
defaultHost:默認(rèn)主機(jī)名
在元素下還有這些子標(biāo)簽:
Host元素:一個(gè)元素可以包含多個(gè)元素,每個(gè)元素定義了一個(gè)虛擬主機(jī),它可以包含一個(gè)或多個(gè)Web應(yīng)用。
name="localhost"
appBase="webapps"
unpackWARs="true"
autoDeploy="true">
name:虛擬主機(jī)名稱
appBase:指定虛擬主機(jī)的目錄,可以指定絕對(duì)目錄,也可以指定相對(duì)于的相對(duì)目錄,如果此項(xiàng)沒(méi)有設(shè)定,默認(rèn)值為/webapps。
unpackWARs:如果此項(xiàng)設(shè)為true,表示將把Web應(yīng)用的WAR文件先展開(kāi)為開(kāi)放目錄結(jié)構(gòu)后再運(yùn)行。如果設(shè)為false。將直接運(yùn)行WAR文件。
autoDeploy:如果此項(xiàng)設(shè)為true,表示當(dāng)Tomcat服務(wù)器處于運(yùn)行狀態(tài)時(shí),能夠監(jiān)測(cè)appBase下文件,如果有新的Web應(yīng)用加入進(jìn)來(lái)。會(huì)自動(dòng)發(fā)布這個(gè)Web應(yīng)用。
alias:指定虛擬主機(jī)別名,可以指定多個(gè)別名。
其他屬性:
deployOnStartUp:如果此項(xiàng)設(shè)置true,表示Tomcat服務(wù)器啟動(dòng)時(shí)會(huì)自動(dòng)發(fā)appBase目錄下所有的Web應(yīng)用,默認(rèn)為true。
在Host元素中可以包含如下子元素:
Context元素:每個(gè)元素代表了運(yùn)行在虛擬主機(jī)上的單個(gè)Web應(yīng)用。一個(gè)元素中可以包含多個(gè)元素。
path="/sample"
docBase="sample"
debug="0"
reloadable="true">
path:指定訪問(wèn)該Web應(yīng)用的URL入口
docBase:指定Web應(yīng)用的文件路徑,可以是絕對(duì)路徑,也可以給定相對(duì)于的appBase屬性的相對(duì)路徑。
reloadable:如果設(shè)置為true,Tomcat服務(wù)器在運(yùn)行狀態(tài)下會(huì)監(jiān)視在WEB-INF/class和WEB-INF/lib目錄下CLASS文件的改動(dòng)。如果檢測(cè)到class文件被更新,服務(wù)器會(huì)自動(dòng)加載Web應(yīng)用。
cookie:指定是否通過(guò)Cookie來(lái)支持Session,默認(rèn)為true。
useNaming:指定是否支持JNDI,默認(rèn)true
Tomcat部署Web應(yīng)用
將JavaWeb項(xiàng)目中的WebContent(WebRoot)下的文件拷貝至Tomcat/webapps目錄下對(duì)應(yīng)的Javaweb項(xiàng)目(如果沒(méi)有,就新建一個(gè)文件夾,命名項(xiàng)目名)中
將JavaWeb項(xiàng)目中的WebContent(WebRoot)打成war包,放入Tomcat/webapps目錄下
打成war包的方法:
1.命令行:
在web項(xiàng)目的WebContent目錄下輸入jar cvf 項(xiàng)目名.war *.* .命令。
2.eclipse:
右擊項(xiàng)目,選擇Export,選擇Web,選擇WAR file
通過(guò)IDE工具綁定Tomcat來(lái)進(jìn)行部署。示例
配置虛擬目錄
在Tomcat中的server.xml中的Host的子標(biāo)簽下的Context標(biāo)簽中,更改docBase屬性,指定項(xiàng)目路徑。
原:tomcat的webapps中
docBase="D:\dsoftinstall\Tomcat\apache-tomcat-9.0.0.M15\webapps\TomcatDemo"
path="/TomcatDemo"
reloadable="true"
source="org.eclipse.jst.jee.server:TomcatDemo"/>
改:將項(xiàng)目放入F盤(pán)
docBase="F:\TomcatDemo"
path="/TomcatDemo"
reloadable="true"
source="org.eclipse.jst.jee.server:TomcatDemo"/>
docBase可以是絕對(duì)路徑,也可以是相對(duì)路徑,如果是相對(duì)路徑,那么是相對(duì)標(biāo)簽中的appBase中的目錄。
虛擬目錄可以指定多個(gè),也就是指定多個(gè)標(biāo)簽。
配置默認(rèn)端口、默認(rèn)應(yīng)用和默認(rèn)主頁(yè)
配置默認(rèn)端口
Tomcat默認(rèn)端口是8080,當(dāng)然,我們可以自己修改端口號(hào),修改完之后,需要重啟Tomcat。如:
原:
connectionTimeout="20000"
port="8080"
protocol="HTTP/1.1"
redirectPort="8443"/>
改:
connectionTimeout="20000"
port="80"
protocol="HTTP/1.1"
redirectPort="8443"/>
配置默認(rèn)應(yīng)用
在Tomcat中修改server.xml文件中的標(biāo)簽中的path,將path的值設(shè)置”“,就不需要寫(xiě)項(xiàng)目名稱了。如:
原:
docBase="D:\dsoftinstall\Tomcat\apache-tomcat-9.0.0.M15\wtpwebapps\TomcatDemo"
path="\TomcatDemo"
reloadable="true"
source="org.eclipse.jst.jee.server:TomcatDemo"/>
改:
docBase="D:\dsoftinstall\Tomcat\apache-tomcat-9.0.0.M15\wtpwebapps\TomcatDemo"
path=""
reloadable="true"
source="org.eclipse.jst.jee.server:TomcatDemo"/>
這樣原本需要輸入localhost:8080/TomcatDemo/1.html,現(xiàn)在只需要localhost:8080/1.html就可以。
配置默認(rèn)主頁(yè)
在Tomcat中修改項(xiàng)目中的web.xml文件,如:
原:
index.html
index.htm
index.jsp
default.html
default.htm
default.jsp
改:(將welcome-list標(biāo)簽的文件文稱改成你的默認(rèn)主頁(yè))
1.html
index.htm
index.jsp
default.html
default.htm
default.jsp
之前訪問(wèn)1.html,需要localhost:8080/TomcatDemo/1.html,現(xiàn)在只需要localhost:8080/TomcatDemo,就可以。
一般默認(rèn)應(yīng)用與默認(rèn)主頁(yè)同時(shí)使用,如果默認(rèn)應(yīng)用和默認(rèn)主頁(yè)都設(shè)置了,我們之前訪問(wèn)的localhost:8080/TomcatDemo/1.html網(wǎng)址就可以簡(jiǎn)寫(xiě)localhost:8080。
“JavaWeb的目錄結(jié)構(gòu)和配置”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。