亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Tomcat的目錄結(jié)構(gòu)

系統(tǒng) 2675 0

原文: http://hi.baidu.com/qinyougen/item/beeb506abb3e1d08a1cf0ffb

Tomcat的目錄結(jié)構(gòu)

一、TOMCAT的目錄結(jié)構(gòu)

/bin:存放windows或Linux平臺上啟動和關(guān)閉Tomcat的腳本文件

/conf:存放Tomcat服務(wù)器的各種全局配置文件,其中最重要的是server.xml和web.xml

/doc:存放Tomcat文檔

/server:包含三個子目錄:classes、lib和webapps

/server/lib:存放Tomcat服務(wù)器所需的各種JAR文件

/server/webapps:存放Tomcat自帶的兩個WEB應(yīng)用admin應(yīng)用和 manager應(yīng)用

/common/lib:存放Tomcat服務(wù)器以及所有web應(yīng)用都可以訪問的jar文件

/shared/lib:存放所有web應(yīng)用都可以訪問的jar文件(但是不能被Tomcat服務(wù)器訪問)

/logs:存放Tomcat執(zhí)行時的日志文件

/src:存放Tomcat的源代碼

/webapps:Tomcat的主要Web發(fā)布目錄,默認情況下把Web應(yīng)用文件放于此目錄

/work:存放JSP編譯后產(chǎn)生的class文件

二、WEB應(yīng)用的目錄結(jié)構(gòu):假設(shè)在$CATALINA_HOME/webapps下有helloapp的web應(yīng)用

/helloapp:Web應(yīng)用的根目錄,所有的jsp文件和html文件都在此目錄下

/helloapp/WEB_INF:存放該web應(yīng)用發(fā)布時的描述文件web.xml

/helloapp/WEB_INF/class:存放各種class文件,Servlet文件也存放于此目錄下

/helloapp/WEB_INF/lib:存放各鐘Web應(yīng)用所需要的jar文件。比如可以存放JDBC驅(qū)動程序的JAR文件

三、Tomcat加載類和資源的順序為(以helloapp應(yīng)用為例):

1、helloapp????? (/webapps/helloapp/Web-INF/下的classes,lib子目錄中*.calss及*.jar,僅helloapp可以加載)

2、Bootstrap???? ($JAVA_HOME/jre/lib/ext/*.jar)

3、System??????? ($CLASSPATH/*.class和CLASSPATH中指定的jar)

4、Common??????? ($CATALINA_HOME/common/下的classes,lib,endores子目錄中*.class及*.jar)

5、Catalina????? ($CATALINA_HOME/server/下的classes,lib子目錄中*.calss及*.jar,僅Tomcat可以加載)

6、Shared??????? ($CATALINA_HOME/shared/下的classes,lib子目錄中*.calss及*.jar,僅所有Web應(yīng)用可以加載)

四、$CATALINA_HOME/conf/server.xml配置簡介

1、<Server>元素屬性

port:指定一個端口,這個端口負責(zé)監(jiān)聽關(guān)閉tomcat的請求

shutdown:指定向端口發(fā)送的命令字符串,通常是“SHUTDOWN”

2、<Service>元素屬性

name:指定service的名字,通常是”Catalina”

3、<Connector/>元素屬性(表示客戶端和service之間的連接):

port:指定服務(wù)器端要創(chuàng)建的端口號,并使用這個斷口監(jiān)聽來自客戶端的請求

minProcessors(考察是否有此屬性):服務(wù)器端啟動時創(chuàng)建的處理請求的線程數(shù)

maxProcessors(考察是否有此屬性):最大可以創(chuàng)建的處理請求的線程數(shù)

maxThreads:服務(wù)器創(chuàng)建的最大線程數(shù)

minSpareThreads:最小剩余線程數(shù)

maxSpareThreads:最大剩余線程數(shù)

enableLookups:如果為true,則可以通過調(diào)用request.getRemoteHost()進行DNS查詢來得到遠程客戶端的實際主機名,若為false則不進行DNS查詢,而是返回其IP地址

redirectPort:指定當服務(wù)器正在處理HTTP請求時收到了一個SSL傳輸請求后重定向的端口號

acceptCount:指定當所有可以使用的處理請求的線程數(shù)都被使用時,可以放到處理隊列中的請求數(shù),超過的請求將不予處理

connectionTimeout:指定超時的時間數(shù)(以毫秒為單位)

disableUploadTimeout:不明

debug:不明

protocol:不明

4、<Engine>元素屬性(指定service中的請求處理主機,接收和處理來自Connector的請求)

name:指定Engine的名字,通常是”Catalina”

defaultHost:指定默認的處理請求的主機名,至少與某個host元素的name屬性值是相同的

5、<Context/>元素屬性(表示一個web應(yīng)用程序)

docBase:指定此Web應(yīng)用的絕對或相對路徑,也可以為WAR文件的路徑

path:表示此Web應(yīng)用程序的url的入口,如為“/hello“,則請求的URL為 http://localhost:8080/hello/

reloadable:如果為true,則Tomcat在運行時會自動監(jiān)視Web應(yīng)用的/WEB-INF/lib和/WEB-INF/classes下文件的改動,自動裝載新應(yīng)用,使我們可以在不重啟Tomcat的情況下更新Web應(yīng)用

6、<Host>元素屬性(表示一個虛擬主機)

name:指定虛擬主機名字

debug:指定日志級別

appBase:存放Web應(yīng)用程序的基本目錄,可以是絕對路徑或相對于$CATALINA_HOME的目錄,默認是$CATALINA_HOME/webapps

unpackWARs:如果為true,則tomcat會自動將WAR文件解壓后運行,否則不解壓而直接從WAR文件中運行應(yīng)用程序

autoDeploy:如果為true,表示Tomcat啟動時會自動發(fā)布appBase目錄下所有的Web應(yīng)用(包括新加入的Web應(yīng)用)

deployOnStarup:如果此項為true,表示Tomcat服務(wù)器啟動時會自動發(fā)布appBase目錄下所有Web應(yīng)用。如果Web應(yīng)用在server.xml中沒有相應(yīng)的<Context>元素,則將采用默認的Context配置。deployOnStarup的默認設(shè)置是true

alias:指定虛擬主機的別名,可以指定多個別名

xmlValidation:不明

xmlNamespaceAware:不明

7、<Logger/>元素屬性(表示日志,調(diào)試和錯誤信息)

className:指定logger使用的類名,此類必須實現(xiàn)org.apache.catalina.Logger 接口

prefix:指定log文件名的前綴(文件名)

suffix:指定log文件名的后綴(擴展名)

timestamp:如果為true,則log文件名中會加入日期時間,如下例:localhost_log.2006-10-04.txt

directory:指定log文件存放的目錄

8、<Realm/>元素屬性(表示存放用戶名,密碼及role的數(shù)據(jù)庫)

className:指定Realm使用的類名,此類必須實現(xiàn)org.apache.catalina.Realm接口

resourceName:不明

9、<Valve/>元素屬性(功能與Logger相似,其prefix和suffix屬性解釋和Logger 中的一樣)

className:指定Valve使用的類名,如用org.apache.catalina.valves.AccessLogValve類可以記錄應(yīng)用程序的訪問信息

directory:指定log文件存放的位置

pattern:有兩個值,common方式記錄遠程主機名或ip地址、用戶名、日期、第一行請求的字符串、HTTP響應(yīng)代碼、發(fā)送的字節(jié)數(shù)。combined方式比common方式記錄的值還多

五、$CATALINA_HOME/conf/web.xml配置簡介

1、默認Web應(yīng)用的首頁文件的設(shè)置

<welcome-file-list>

<welcome-file>index.html</welcome-file>

<welcome-file>index.htm</welcome-file>

<welcome-file>index.jsp</welcome-file>

</welcome-file-list>

2、報錯文件的設(shè)置

a.如果某文件資源沒有找到,服務(wù)器要報404錯誤,按下述配置則會調(diào)用\webapps\ROOT\notFileFound.jsp

<error-page>

<error-code>404</error-code>

<location>/notFileFound.jsp</location>

</error-page>

b.如果執(zhí)行的某個JSP文件產(chǎn)生NullPointException,則會調(diào)用\webapps\ROOT\null.jsp

<error-page>

<exception-type>java.lang.NullPointerException</exception-type>

<location>/null.jsp</location>

</error-page>

3、session 會話過期時間的設(shè)置,單位是分鐘

<session-config>

<session-timeout>30</session-timeout>

</session-config>

4、servlet的設(shè)置

<servlet>

????? <servlet-name>default</servlet-name>

????? <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>

????? <init-param>

????????? <param-name>debug</param-name>

????????? <param-value>0</param-value>

????? </init-param>

????? <init-param>

????????? <param-name>listings</param-name>

????????? <param-value>true</param-value>

????? </init-param>

????? <load-on-startup>1</load-on-startup>

</servlet>

說明:

<servlet-name>:定義Servlet的名字。

<servlet-class>:指定實現(xiàn)這個Servlet的類。

<init-param>:定義Servlet的初始化參數(shù)(包括參數(shù)名和參數(shù)值),一個 <servlet>元素中可以有多個<init-param>元素。

<load-on-startup>:指定當Web應(yīng)用啟動時,裝載Servlet的次序。當這個值為正數(shù)或零,Servlet容器先加載數(shù)值小的Servlet,再一次加載其他數(shù)值大的Servlet。如果這個值為負數(shù)或沒有設(shè)定,Servlet將在Web客戶首次訪問這個Servlet時加載它。

4、filter過濾器的設(shè)置

<filter>

<filter-name>FilterSource</filter-name>

<filter-class>project4. FilterSource </filter-class>

</filter>

<filter-mapping>

<filter-name>FilterSource</filter-name>

<url-pattern>/WwwServlet</url-pattern>

(<url-pattern>/haha/*</url-pattern>)

</filter-mapping>

過濾:

1) 身份驗證的過濾Authentication Filters

2) 日志和審核的過濾Logging and Auditing Filters

3) 圖片轉(zhuǎn)化的過濾Image conversion Filters

4) 數(shù)據(jù)壓縮的過濾Data compression Filters

5) 加密過濾Encryption Filters

6) Tokenizing Filters

7) 資源訪問事件觸發(fā)的過濾Filters that trigger resource access events XSL/T 過濾XSL/T filters

9) 內(nèi)容類型的過濾Mime-type chain Filter注意監(jiān)聽器的順序,如:先安全過濾,然后資源,然后內(nèi)容類型等,順序可以自己定。

六、建立自己的WEB應(yīng)用目錄

到Tomcat的安裝目錄的webapps目錄,可以看到ROOT,examples, tomcat-docs之類Tomcat自帶的的目錄

在webapps目錄下新建一個目錄myapp,在myapp下新建一個目錄WEB-INF(注:目錄名稱是區(qū)分大小寫的)

WEB-INF下新建一個文件web.xml,內(nèi)容如下:

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

" http://java.sun.com/dtd/web-app_2_3.dtd ">

<web-app><display-name>My Web Application</display-name><description>A application for test.</description></web-app>

在myapp下新建一個測試的jsp頁面,文件名為index.jsp,內(nèi)容如下:

<html><body><center>Now time is: <%=new java.util.Date()%></center></body></html>

重啟Tomcat,打開瀏覽器,輸入 http://localhost:8080/myapp/index.jsp 看到當前時間的話說明就成功了。

七、Tomcat管理

1、管理員帳戶配置($CATALINA_HOME/conf/tomcat-users.xml)

在tomcat-users.xml文件相應(yīng)的位置添加一行:<user name="user" password="user" roles="standard,manager"/>用來添加一個管理員帳戶。然后重起tomcat,在瀏覽器中輸入地址 http://localhost:8080/manager/ ,在彈出的對話框輸入上面的用戶名和密碼即可

2、Web應(yīng)用列表

在瀏覽器中輸入 http://localhost:8080/manager/list ,瀏覽器將會列出目前存在的所有Web應(yīng)用的信息,分別為:Web應(yīng)用程序的路徑、當前狀態(tài)、連接這個Web應(yīng)用的Session數(shù)目

3、重新裝載Web應(yīng)用程序

在瀏覽器中輸入 http://localhost:8080/manager/reload?path=/examples ,瀏覽器顯示如下:OK - Reloaded application at context path /examples,這表示example應(yīng)用程序裝載成功,如果我們將server.xml的Context元素的reloadable屬性設(shè)為true,則沒必要利用這種方式重新裝載Web應(yīng)用程序,因為tomcat會自動裝載。

4、顯示Session信息

在瀏覽器中輸入 http://localhost:8080/manager/sessions?path=/examples ,瀏覽器顯示如下:OK - Session information for application at context path /examples Default maximum session inactive interval 30 minutes

5、啟動和關(guān)閉應(yīng)用程序

在瀏覽器中輸入 http://localhost:8080/manager/start?path=/example http://localhost:8080/manager/stop?path=/examples 分別啟動和關(guān)閉examples應(yīng)用程序。

6、部署及撤銷部署

WAR有兩種組織方式,一種是按一定的目錄結(jié)構(gòu)組織文件,一種是一個后綴為WAR的壓縮包,因此它的部署方式也有兩種:

a.在瀏覽器中輸入: http://localhost:8080/manager/install?path=/examples&war=file:/c:\examples ,就會將按目錄結(jié)構(gòu)組織的WAR部署

b.在瀏覽器中輸入: http://localhost:8080/manager/install?path=/examples&war=jar:file:/c:\examples.war!/ ,就會將按壓縮包組織的WAR部署,注意此url后半部分一定要有!/號

部署后就可以用: http://localhost:8080/examples 訪問了

在瀏覽器中輸入: http://localhost:8080/manager/remove?path=/examples ,就會撤銷剛才部署的應(yīng)用程序

Tomcat的目錄結(jié)構(gòu)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: aaa一级黄色片 | 国产在线精品香蕉综合网一区 | 精品在线视频播放 | 天天摸天天操免费播放小视频 | 9191精品国产费久久 | 一级毛片成人免费看免费不卡 | 欧美亚洲图区 | 国产日韩精品视频一区二区三区 | 中文字幕亚洲视频 | 91精品免费高清在线 | 国产精品一区二区久久精品涩爱 | 国产精品合集一区二区 | 九九视频免费看 | 欧美日韩激情在线 | 九九精品国产兔费观看久久 | 四虎精品免费永久在线 | 亚洲精品综合一区二区三区在线 | 亚洲国产一区二区三区四区五区 | 久久国产麻豆 | 免费看欧美一级特黄a大片一 | 国产欧美高清 | 国产中文字幕第一页 | 精品欧美成人bd高清在线观看 | 狠狠色很很在鲁视频 | 免费鲁丝片一级在线观看 | 可以免费观看一级毛片黄a 可以直接看的毛片 | 久久伦理影院 | 中文字幕国产一区 | 日韩中文精品亚洲第三区 | 精品国产91乱码一区二区三区 | 亚洲丶国产丶欧美一区二区三区 | 久久社区视频 | 久久96国产精品久久久 | 国产一级做a爱片久久毛片a | 伊人久久丁香色婷婷啪啪 | 国产激情视频在线 | 狠色狠狠色狠狠狠色综合久久 | 国产网红福利视频网站 | 国产精品第1页 | 日韩精品亚洲人成在线播放 | 国产精品视频在线免费观看 |