<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-88  評(píng)論-77  文章-48  trackbacks-0
    這只小貓玩了它差不多也有一年多了,還沒仔細(xì)瞅瞅長個(gè)什么樣。當(dāng)它耍性子的時(shí)候,常常弄的我手足無措,因?yàn)椴欢f出的一大堆亂七八糟的洋話。為了能讓它說start就start,說down就down,下面要開始一段我訓(xùn)獸師的經(jīng)歷 ^_^。

    寵物簡介
    Jakarta Tomcat服務(wù)器是一種Servlet/JSP容器,經(jīng)歷了3.x到4.0.x到4.1.x的變遷,現(xiàn)在最新的版本為5.0.x,支持Servlet2.4和JSP2.0規(guī)范,從apache網(wǎng)站上下載Tomcat 5,在環(huán)境變量中配置一下JAVA_HOME,小貓就能生靈活現(xiàn)的跑起來了。若小貓啟動(dòng)失敗,DOS窗口會(huì)自動(dòng)關(guān)閉,若運(yùn)行catalina run命令DOS窗口是不會(huì)自動(dòng)關(guān)閉的。

    tomcat中有三個(gè)放置java庫的地方,分別是/server/lib、/shared/lib和/common/lib。
    區(qū)別:/server/lib - 其中的jar文件只能被tomcat服務(wù)器訪問。
    /shared/lib - 其中的jar文件可以被所有的Web應(yīng)用訪問,但不能被tomcat服務(wù)器訪問到。
    /common/lib - Web服務(wù)和tomcat服務(wù)器都可以訪問的到。

    server.xml文件解析 - 文件位置是<%CATALINA_HOME%>/conf/server.xml

    配置虛擬主機(jī)
    Host元素代表虛擬主機(jī),在同一個(gè)Engine元素下可以配置多個(gè)虛擬主機(jī)。打開server.xml文件可以發(fā)現(xiàn)Engine元素下已經(jīng)有一個(gè)名為localhost的Host元素了,可以在它后面加入下列代碼:

    < Host? name ="www.myname.com" ?debug ="0" ?appBase ="c:\myname" ?unpackWar ="true" ?autoDeploy ="true" >
    ??? < alias > www.myname1.com </ alias >
    ??? < alias > www.myname2.com </ alias >
    ??? < Context? pathh ="/helloapp" ?docBase ="helloapp" ?debug ="0" ?reloadable ="true" />
    </ Host > ?

    Session的使用
    Session是一種用來跟蹤用戶狀態(tài)的機(jī)制,那它是怎么實(shí)現(xiàn)的呢?Servlet容器通過在客戶端瀏覽器中保存一個(gè)Session ID來跟蹤Session,調(diào)用session.getID()可以看到你的Session ID是多少。如果客戶端支持Cookie,就把Session ID作為Cookie保持在瀏覽器中,現(xiàn)在絕大多數(shù)瀏覽器都會(huì)把Cookie功能打開,但如果用戶禁止了Cookie呢?Java Servlet API中提出了另外一種機(jī)制,Servlet容器可以重寫客戶requst的URL,把Session ID添加到URL信息中,HttpServletResponse接口提供了這樣的方法:public String encodeURL(String url)-先判斷如果沒有啟用Session,例如jsp中<%@ page session="false"%>或執(zhí)行了session.invalideate(),那么直接返回url,在判斷客戶端師父支持Cookie,如果不支持,就在url中加入Session ID的信息,然后返回修改后的url。

    Session的管理
    當(dāng)一個(gè)sesson開始時(shí),Servlet容器會(huì)創(chuàng)建一個(gè)HttpSession對(duì)象,在某些情況下把這些Httpsession對(duì)象從內(nèi)存中轉(zhuǎn)移到文件系統(tǒng)中或數(shù)據(jù)庫中,需要訪問的時(shí)候在把它們載入到內(nèi)存中來。這樣做的好處有兩點(diǎn):節(jié)約了內(nèi)存的消耗,當(dāng)web服務(wù)器產(chǎn)生故障時(shí),還可以從文件系統(tǒng)或數(shù)據(jù)庫中恢復(fù)Session的數(shù)據(jù)。
    對(duì)于Session的管理,小貓?zhí)峁┝藘蓚€(gè)實(shí)現(xiàn)類:org.apache.catalina.session.StandardManager和org.apache.catalina.session.PersistentManager。
    StandardManager -是默認(rèn)的方法,當(dāng)Tomcat服務(wù)器重啟或重載的時(shí)候,會(huì)把Session對(duì)象保存到
    <%CATALINA_HOME%>/work/Catalina/honstname/applicatonname/SESSIONS.ser(默認(rèn)值)文件中,每個(gè)對(duì)象對(duì)應(yīng)一個(gè)文件,以Session ID為文件名,例如:

    < Context? path ="/helloapp" ?docBase ="helloapp" ?debug ="0" ?reloadable ="true" >
    ??? < Manager? className ="org.apache.catalina.session.StandardManager" ?debug ="0" ?
    ????? maxActiveSessions="-1" checkInterval="60"
    ?/ >
    </ Context >

    參數(shù)說明:checkInterval-檢查session是否過期的時(shí)間間隔,以秒為單位,缺省值是60秒;
    maxActiveSessions-可處于活動(dòng)狀態(tài)的session數(shù)。

    PersistentManager -提供了更加靈活的管理方式,具有容錯(cuò)能力,可以及時(shí)把Session備份到Session Store中,可以控制內(nèi)存中Session的數(shù)量。
    小貓還提供了實(shí)現(xiàn)持久化Session Store的接口,org.apache.catalina.Store,目前提供了兩個(gè)具體實(shí)現(xiàn)類:org.apache.catalina.FileStore和org.apache.catalina.JDBCStore。
    server.xml中的配置File Store -

    < Context? path ="/helloapp" ?docBase ="helloapp" ?debug ="0" ?reloadable ="true" >
    ??? < Manager? className ="org.apache.catalina.session.PersistentManager" ?debug ="0" ?saveOnRestart ="true" ?
    ????????? maxActiveSessions
    ="-1" ?minIdleSwap ="-1" ?maxIdleSwap ="-1" ?maxIdleBackup ="-1" ? >
    ??? < Store? className ="org.apache.catalina.session.FileStore" ?directory ="mydir" />
    ??? </ Manager >
    </ Context >

    參數(shù)說明:saveOnRestart-服務(wù)器關(guān)閉時(shí),是否將所有的session保存到文件中;
    maxActiveSessions-可處于活動(dòng)狀態(tài)的session數(shù);
    minIdleSwap/maxIdleSwap-session處于不活動(dòng)狀態(tài)最短/長時(shí)間(s),sesson對(duì)象轉(zhuǎn)移到File Store中;
    maxIdleBackup-超過這一時(shí)間,將session備份。(-1表示沒有限制)

    JDBCStore配置的區(qū)別:

    < Store? calssName ="org.apache.catalina.JDBCStore" ?driverName ="com.mysql.jdbc.Driver" ?
    ??? connectionURL
    ="jdbc:mysql://localhost/tomsessionDB?user=root&password=" ?
    ??? sessionTable
    ="tomcat_session" ?sessionIdCol ="session_id" ?sessionDataCol ="session_data" ?
    ??? sessionValidCol
    ="session_valid" ?sessionMaxInactiveCol ="max_inactive" ?
    ??? sessionLastAccessedCol
    ="last_access" ?sessionAppCol ="app_name" ?checkInterval ="60" ?debug ="99" ? />

    Session失效時(shí)間的設(shè)定
    在web.xml文件中,位于<servlet-mapping>和<welcome-file-list>元素之間加入如下代碼,單位為分鐘:

    < session-config > ???
    ??? < session-timeout > 60 </ session-timeout >
    </ session-config >

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

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

    manager平臺(tái)-列出來所有Web應(yīng)用和狀態(tài),并提供了Start、Stop、Reload、 Undeploy命令,還可以發(fā)布
    <%CATALINA_HOME%>/webapps目錄下的Web應(yīng)用或系統(tǒng)文件任意位置的WAR文件。

    posted on 2006-06-07 14:41 崛起的程序員 閱讀(244) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 成人免费无码H在线观看不卡| 国产成人亚洲影院在线观看| 光棍天堂免费手机观看在线观看| 亚洲国产AV无码一区二区三区| 国产亚洲免费的视频看| 亚洲va中文字幕无码| 好爽…又高潮了毛片免费看| 中文字幕视频免费| 两个人看的www免费视频| 一级毛片大全免费播放| 久久久久久久久无码精品亚洲日韩| 亚洲国产精品日韩在线观看| 亚洲av永久无码精品表情包 | 亚洲欧洲日产v特级毛片| 亚洲午夜久久久影院| 亚洲国产精品毛片av不卡在线| 暖暖在线日本免费中文| 免费无码A片一区二三区| 无码区日韩特区永久免费系列| 亚欧日韩毛片在线看免费网站| 三年在线观看免费观看完整版中文 | 亚洲中文字幕无码av在线| 久久亚洲日韩看片无码| 亚洲AV无码成人网站久久精品大| 在线精品亚洲一区二区小说 | 污网站免费在线观看| 无码亚洲成a人在线观看| 亚洲熟妇丰满xxxxx| 在线观看亚洲AV每日更新无码| 亚洲三级视频在线观看| 亚洲va精品中文字幕| 亚洲一区二区三区无码国产| 亚洲午夜在线一区| 亚洲乱码一二三四区国产| 亚洲国产午夜电影在线入口| 亚洲成人福利在线| 亚洲午夜精品久久久久久app| 亚洲欧洲日韩极速播放| 亚洲AV无码一区二区三区久久精品| 亚洲高清乱码午夜电影网| 国产成人不卡亚洲精品91|