欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

tomcat的安裝目錄各文件夾的意義

系統 1920 0

假設你已將Tomcat解壓,你已得到下列 目錄 結構 :
? ? ? ??
目錄名 --描述
? ? ? ??bin
? ? ? ??
包含啟動/關閉腳本。
? ? ? ??conf
? ? ? ??
包含不同的配置文件,包括 server.xml(Tomcat 的主要配置文件)和為不同的Tomcat配置的web應用設置缺省值的文件web.xml。
? ? ? ??doc
? ? ? ??
包含各種Tomcat文檔。
? ? ? ??lib
? ? ? ??
包含Tomcat使用的jar文件,unix平臺此目錄下的任何文件都被加到Tomcat的classpath中。
? ? ? ??logs
? ? ? ??Tomcat
擺放日志文件的地方。
? ? ? ??src
? ? ? ??ServletAPI
源文件,先別高興,這些只有些必須在Servlet容器內實現的空接口和抽象類。
? ? ? ??webapps
? ? ? ??
包含web項目示例。

? ? ? ??此外你可以Tomcat會創建如下目錄 :
? ? ? ??work
? ? ? ??Tomcat
自動生成,放置Tomcat運行時的臨時文件(如編譯后的JSP文件),如在Tomcat運行時刪除此目錄.JSP頁面將不能運行。
? ? ? ??classes
? ? ? ??
你可以創建此目錄來添加一些附加的類到類路徑中,任何你加到此目錄中的類都可在Tomcat的類路徑中找到自身。

Tomcat 配置文件及其元素描述

一, tomcat 的配置文件

? ? ? ??Tomcat的配置基于兩個配置文件:
? ? ? ??1. server.xml - Tomcat
的全局配置文件。
? ? ? ??2. web.xml -
在Tomcat中配置不同的關系環境。

二,server.xml
? ? ? ??server.xml
是Tomcat的主配置文件.完成兩個目標:

? ? ? ??1 提供Tomcat組件的初始配置。
? ? ? ??2
說明Tomcat的結構與含義,使得Tomcat通過實例化組件完成起動及構建自身。

? ? ? ??在server.xml中的重要元素的描述:

? ? ? ??Server
? ? ? ??server.xml文件中最重要的元素,Server定義了一個Tomcat服務器,Server元素能包含Logger和ContextManager元素類型
? ? ? ??Logger
? ? ? ??
此元素定義一個Logger對象,每個 Logger都有一個名字來標識,也有一個紀錄Logger的輸出和冗余級別(描述此日志級別)和包含日志文件的路徑。通常有servlet的 Logger(ServletContext.log()處),JSP和Tomcat運行時的Logger。

? ? ? ??ContextManager
? ? ? ??ContextManager
說明一套 ContextInterceptor, RequestInterceptor , Context 和他們的Connectors的配置及結構.ContextManager有幾個隨同提供的特性 :
? ? ? ??1.
用來紀錄調試信息的調試級別
? ? ? ??2. webapps/,conf/,logs/
和所有已定義的環境的基本位置.用來使Tomcat可以在TOMCAT_HOME外的 其他 目錄啟動 .
? ? ? ??3.
工作目錄的名字

? ? ? ??ContextInterceptor&RequestInterceptor

? ? ? ??這 些偵聽器(interceptors)偵聽具體發生在ContextManager中的事件。例如,ContextInterceptor偵聽 Tomcat的啟動及終止事件,RequestInterceptor監視在它服務過程中用戶請求需要通過的不同階段。Tomcat的管理員不必知道太多 關于偵聽器的知識。另外,開發者應該知道這是如何在Tomcat中實現一個”全局”型的操作(例如安全性及每個請求日志 )
? ? ? ??Connector
? ? ? ??Connector
表示一個到用戶的聯接,不管是通過web服務器或直接到用戶瀏覽器(在一個獨立配置中)。Connector負責管理Tomcat的工作線程和讀/寫連接到不同用戶的端口的請求/響應。Connector的配置包含如下信息:
? ? ? ??1.
句柄類
? ? ? ??2.
句柄監聽的TCP/IP端口
? ? ? ??3.
句柄服務器端口的TCP/IP的 backlog.
? ? ? ??Context
? ? ? ??
每個Context提供一個指向你放置你Web項目的Tomcat的下屬目錄。每個Context包含如下配置: [Page]
? ? ? ??1. Context
放置的路徑,可以是與ContextManager主目錄相關的路徑。
? ? ? ??2.
紀錄調試信息的調試級別。
? ? ? ??3.
可重載的標志.開發Servlet時,重載更改后的 Servlet,這是一個非常便利的特性,你可以調試或用Tomcat測試新代碼而不用停止或重新啟動Tomcat。要打開重載,把reloadable 設為true即可。這雖花費時間但可檢測所發生的變化;更重要的是鑒于在一個裝載類對象裝入一個新的servlet時,類裝載觸發器可能會擲出一些錯誤。 為避免這些問題,你可以設置可重載為false,這將停止重載功能。

三,web.xml

? ? ? ??Tomcat 可以讓用戶通過將缺省的web.xml放入conf目錄中來定義所有關系環境的web.xml的缺省值。建立一個新的關系環境時,Tomcat使用缺省的 web.xml文件作為基本設置,應用項目特定的web.xml(放在應用項目的WEB-INF/web.xml文件)來覆蓋這些缺省值。

?

?

?

?

?

?

?

1.Tomcat簡介

?? Jakarta Tomcat服務器是一種Servlet/JSP容器,經歷了3.x到4.0.x到4.1.x的變遷,現在最新的版本為5.0.x,支持 Servlet2.4和JSP2.0規范.安裝Tomcat之前必須安裝JDK,并在環境變量中設置JAVA_HOME變量。這樣Tomcat就可以啟動 了。

2.文件構成

安裝后的Tomcat文件構成如下圖所示:

? tomcat的安裝目錄各文件夾的意義

2.1首先介紹Java類庫的存放位置,有三個:分別是/server/lib、/shared/lib和/common/lib。

三 個位置的區別:/server/lib下的Jar文件只能被Tomcat服務器自身訪問;/shared/lib下的jar文件及類只能被部署在 Tomcat中的所有Web應用訪問,不能被Tomcat服務器本身訪問;/common/lib下的Jar文件及類既能被部署在Tomcat中的所有 Web應用訪問,也能被Tomcat服務器本身訪問。

此外某個Web應用下的Web-inf/lib下的Jar文件只能被該Web應用訪問。

2.2類的加載順序

(1).最先是$JAVA_HOME/jre/lib/ext/下的jar文件。

(2).環境變量CLASSPATH中的jar和class文件。

(3).$CATALINA_HOME/common/classes下的class文件。

(4).$CATALINA_HOME/commons/endorsed下的jar文件。

(5).$CATALINA_HOME/commons/i18n下的jar文件。

(6).$CATALINA_HOME/common/lib?下的jar文件。
(JDBC驅動之類的jar文件可以放在這里,這樣就可以避免在server.xml配置好數據源卻出現找不到JDBC?Driver的情況。)
(7).$CATALINA_HOME/server/classes下的class文件。

(8).$CATALINA_HOME/server/lib/下的jar文件。

(9).$CATALINA_BASE/shared/classes?下的class文件。

(10).$CATALINA_BASE/shared/lib下的jar文件。

(11).各自具體的webapp?/WEB-INF/classes下的class文件。

(12).各自具體的webapp?/WEB-INF/lib下的jar文件。

2.3 admin應用和manager應用

這 是Tomcat中自帶的兩個Web應用,位于<%CATALINA_HOME%>/server/webapps/admin (manager),訪問地址是http://localhsot:8080/admin(manager)。要訪問這兩個Web應用,需要在
<%CATALINA_HOME%>/conf/tomcat-users.xml中添加如下內容:
<user username="admin" password="1234" role="admin"/>?????????? //對應admin Web應用
<user username="manager" password="1234" role="manager"/>?? //對應manager Web應用

admin應用- 把所有可配置的信息分為三類:Tomcat Server、Resources、User Definition。
Tomcat Server-相當于server.xml中的<Server>元素及其子元素,<Service>、< Host>、<Context>、<Resources>、<Date Source>。
Resources -相當于server.xml中的<GlobalNamingResources>,共有四種資源:Date Source(JNDI數據源)、Mail Sessioin(JNDI Mail Session資源)、Environment Entry(環境變量)、User Database(安全域中的用戶數據庫)。
User Definition-與tomcat-users.xml相對應。

manager應用 -列出來所有Web應用和狀態,并提供了Start、Stop、Reload、 Undeploy命令,還可以發布
<%CATALINA_HOME%>/webapps目錄下的Web應用或系統文件任意位置的WAR文件。

3. 相關配置

Tomcat里面常修改的配置文件有兩個Server.xml和Web.xml。

3.1 Server.xml--文件位置是<%CATALINA_HOME%>/conf/server.xml。該文件配置整個Tomcat服務器,其包含的各個域說明如下所示:

<Server>元素 每個Service元素只能有一個Engine元素.元素處理在同一個<Service>中所有<Connector>元素接收到的客戶請求.由org.apahce.catalina.Engine接口定義.

<Engine name="Catalina" defaultHost="localhost" debug="0">

1>className指定實現Engine接口的類,默認值為StandardEngine
2>defaultHost指定處理客戶的默認主機名,在<Engine>中的<Host>子元素中必須定義這一主機
3>name定義Engine的名字

在<Engine>可以包含如下元素<Logger>, <Realm>, <Value>, <Host>

? <Host>元素 由Host接口定義.一個Engine元素可以包含多個<Host>元素.每個<Host>的元素定義了一個虛擬主機.它包含了一個或多個Web應用.

? <Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true">

1>className指定實現Host接口的類.默認值為StandardHost
2>appBase指定虛擬主機的目錄,可以指定絕對目錄,也可以指定相對于<CATALINA_HOME>的相對目錄.如果沒有此項,默認為<CATALINA_HOME>/webapps
3>autoDeploy如果此項設為true,表示Tomcat服務處于運行狀態時,能夠監測appBase下的文件,如果有新有web應用加入進來,會自運發布這個WEB應用
4>unpackWARs如果此項設置為true,表示把WEB應用的WAR文件先展開為開放目錄結構后再運行.如果設為false將直接運行為WAR文件
5>alias指定主機別名,可以指定多個別名
6> deployOnStartup如果此項設為true,表示Tomcat服務器啟動時會自動發布appBase目錄下所有的Web應用.如果Web應用中 的server.xml沒有相應的<Context>元素,將采用Tomcat默認的Context
7>name定義虛擬主機的名字

在<Host>元素中可以包含如下子元素<Logger>, <Realm>, <Value>, <Context>

<Context>元素 由Context 接口定義.是使用最頻繁的元素.每個<Context元素代表了運行在虛擬主機上的單個Web應用.一個<Host>可以包含多個 <Context>元素.每個web應用有唯一的一個相對應的Context代表web應用自身.servlet容器為第一個web應用創建 一個ServletContext對象.

<Context path="/sample" docBase="sample" debug="0" reloadbale="true">

1>className指定實現Context的類,默認為StandardContext類
2>path指定訪問Web應用的URL入口,注意/myweb,而不是myweb了事
3>reloadable如果這個屬性設為true, Tomcat服務器在運行狀態下會監視在WEB-INF/classes和Web-INF/lib目錄CLASS文件的改運.如果監視到有class文件被更新,服務器自重新加載Web應用
3>cookies指定是否通過Cookies來支持Session,默認值為true
4>useNaming指定是否支持JNDI,默認值為了true


在<Context>元素中可以包含如下元素<Logger>, <Realm>, <Resource>, <ResourceParams>

Connector元素 由Connector接口定義.<Connector>元素代表與客戶程序實際交互的給件,它負責接收客戶請求,以及向客戶返回響應結果.

<Connector port="8080" maxThread="50" minSpareThreads="25" maxSpareThread="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" />

<Connection port="8009" enableLookups="false" redirectPort="8443" debug="0" protocol="AJP/1.3" />

第一個Connector元素定義了一個HTTP Connector,它通過8080端口接收HTTP請求;第二個Connector元素定義了一個JD Connector,它通過8009端口接收由其它服務器轉發過來的請求.

Connector元素共用屬性
1>className指定實現Connector接口的類
2>enableLookups如果設為true,表示支持域名解析,可以把IP地址解析為主機名.WEB應用中調用request.getRemoteHost方法返回客戶機主機名.默認值為true
3>redirectPort指定轉發端口.如果當前端口只支持non-SSL請求,在需要安全通信的場命,將把客戶請求轉發至SSL的redirectPort端口
HttpConnector元素的屬性
1>className實現Connector的類
2>port設定Tcp/IP端口,默認值為8080,如果把8080改成80,則只要輸入 http://localhost 即可
因為TCP/IP的默認端口是80
3>address如果服務器有二個以上ip地址,此屬性可以設定端口監聽的ip地址.默認情況下,端口會監聽服務器上所有的ip地址
4>bufferSize設定由端口創建的輸入流的緩存大小.默認值為2048byte
5>protocol設定Http協議,默認值為HTTP/1.1
6>maxThreads設定在監聽端口的線程的最大數目,這個值也決定了服務器可以同時響應客戶請求的最大數目.默認值為200
7>acceptCount設定在監聽端口隊列的最大客戶請求數量,默認值為10.如果隊列已滿,客戶必須等待.
8>connectionTimeout定義建立客戶連接超時的時間.如果為-1,表示不限制建立客戶連接的時間
JkConnector的屬性
1>className實現Connector的類
2>port設定AJP端口號
3>protocol必須設定為AJP/1.3

3.2 Web.xml--文件位置是webapps/Web應用/WEB-INF/Web.xml。該文件是Web應用部署描述文件,用于配置其發布信息,主要配置以下內容:

(1)Servlet的定義

(2)Servlet的初始化參數

(3)servlet及jsp的映射

(4)welcome文件清單

(5)資源引用(如數據源引用)

(6)環境變量的定義

3.3 Tomcat中JNDI數據源的配置

(1).? 在<%CATALINA_HOME%>/conf/server.xml中加入注意DBTest為你的webapp目錄:

<Context path="/DBTest" docBase="/DBTest" debug="0" reloadable="true" crossContext="true">??
??????? <Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"/>
???? <ResourceParams name="jdbc/TestDB">
?????? <parameter>
???????? <name>factory</name>
???????? <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
?????? </parameter>
?????? <parameter>
???????? <name>maxActive</name>
???????? <value>100</value>
?????? </parameter>
?????? <parameter>
???????? <name>maxIdle</name>
???????? <value>30</value>
?????? </parameter>
?????? <parameter>
???????? <name>maxWait</name>
???????? <value>10000</value>
?????? </parameter>
?????? <parameter>
??????? <name>username</name>
??????? <value>sa</value>
?????? </parameter>
?????? <parameter>
??????? <name>password</name>
??????? <value>cugb201201</value>
?????? </parameter>
?????? <parameter>
????????? <name>driverClassName</name>
????????? <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
?????? </parameter>
?????? <parameter>
???????? <name>url</name>
???????? <value>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=TestDB1</value>
?????? </parameter>
???? </ResourceParams>
????</Context>

(2)在webapp\WEB-INF\web.xml中加入<resource-ref>元素:

<resource-ref>

<res-ref-name>jdbc/TestDB</res-ref-name>

??? <res-type>javax.sql.DataSource</res-type>

??? <res-auth>Container</res-auth>

??? <res-sharing-scope>Shareable</res-sharing-scope>

? </resource-ref>

(3)本代碼以sqlServer為例說明,需要將其相關的jdbc驅動程序拷貝到<CATALINA_HOME>/common/lib目錄下.

(4)在程序中通過連接池取得數據庫連接:

try{

??????? Context ctx = new InitialContext();

?????????????? if(ctx == null)

????????????????????? throw new Exception("no Context!");

?????????????? ds = (DataSource)ctx.lookup("java:comp/env/jdbc/TestDB");

}

catch(Exception e){

??????? System.out.println(e.getMessage());

}

轉自: http://www.cnblogs.com/jerikc/articles/2412687.html

tomcat的安裝目錄各文件夾的意義


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

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

【本文對您有幫助就好】

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

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久九精品 | 亚洲 偷拍 色播 | 国产第一页浮力 | 亚洲精品中文字幕大岛优香 | 久久影片| 免费观看视频网站 | 影音av | 五月婷婷激情六月 | 久久亚洲精品中文字幕二区 | 涩涩操 | 乳罩双性受给攻喂奶高h | 成人综合久久综合 | 欧美三级电影在线观看 | 亚洲精品在线免费观看视频 | 午夜在线成人 | 国产品久久 | 98色花堂国产第一页 | 蜜桃在线视频 | 精品一久久 | 91文字幕巨乱亚洲香蕉 | 欧美精品日韩 | 色婷婷AV99XX | 手机国产日韩高清免费看片 | 国产chinese中国hdxxxx | 久久cao | 色精品一区二区三区 | 久久久av| 天天操天天操天天操天天操 | 美国黄色毛片 | 免费午夜视频 | 欧美日韩精品一区二区在线线 | 色婷亚洲 | 排球少年第四季樱花动漫 | 国产综合视频在线 | 鲁在线视频| 99精品一区二区 | 亚洲国产精品91 | 黄色激情网站 | 日韩av免费看 | 久久久久99 | 男生日女生免费视频 |