免费中文字幕午夜理论模特,久久午夜福利精品,国产精品久久久久中文,久久精品视频免费观看12

  • <object id="ysikk"><strike id="ysikk"></strike></object>
    <menu id="ysikk"><abbr id="ysikk"></abbr></menu>
    <ul id="ysikk"></ul>
    <tbody id="ysikk"></tbody>
  • <menu id="ysikk"><noscript id="ysikk"></noscript></menu>

    課件009 教學(xué)資源下載
    課件 試卷 教案 畢業(yè)論文 圖書軟件 職教研究 期刊推介 信息發(fā)布 會員賬戶
    當(dāng)前位置:課件009首頁 >> 職教研究 >> 專業(yè)論文 >> 淺析Comet技術(shù)在Java Web實時系統(tǒng)開發(fā)中的應(yīng)用

    淺析Comet技術(shù)在Java Web實時系統(tǒng)開發(fā)中的應(yīng)用

    (作者未知) 2011/6/23

    接上頁。當(dāng)某個連接發(fā)送請求到服務(wù)器,服務(wù)器把這個連接請求當(dāng)作一個請求“事件”,并把這個“事件”分配給相應(yīng)的函數(shù)處理。我們把這個處理函數(shù)放到線程中去執(zhí)行,執(zhí)行完就把線程歸還。這樣一個線程就可以異步地處理多個事件。
       為了獲得事件通知,我們需要一個機制,它只在需要讀時才讀,需要寫時才寫,但又保持連接打開以迅速響應(yīng)發(fā)生的事件。為了方便這個過程,就要用到NIO,它已是1.4版本以后的Java語言的一部分。
       2 使用Java開發(fā)Comet風(fēng)格的Web應(yīng)用
       支持Comet的Java Web開源服務(wù)器有Tomcat 6.0.14和Jetty 6.1.14,它們的實現(xiàn)方法各不相同。下面我們以Tomcat為例來說明開發(fā)Comet風(fēng)格的Web應(yīng)用的步驟[2]。
       本例以流方式實現(xiàn)了一個Comet應(yīng)用。服務(wù)器每隔一定的時間間隔產(chǎn)生一個0~9之間的隨機數(shù),將數(shù)據(jù)推送到客戶端?蛻舳私邮詹@示。
       第一,要下載和安裝Tomcat6.X(本文截稿時,Tomcat最新版本是6.0.24)。
       第二,為了使用Comet,要求服務(wù)器支持NIO,所以要修改Tomcat配置文件conf/server.xml, 即啟用異步版本的IO連接器,這個非常關(guān)鍵。如下所示:
       第三,該項目需要Comet的API支持,Tomcat6自帶的Comet API包為catalina.jar,在Tomcat安裝目錄下的lib目錄中。
       第四,編寫Servlet。通過servlet實現(xiàn)CometProcessor接口。這個接口要求實現(xiàn)event()方法,在配置的Http11NioProtocol調(diào)用event()方法來處理請求,而不是doGet或doPost。
       在event()方法中,分別處理連接開始(BEGIN)、新數(shù)據(jù)可用(READ),連接結(jié)束(END),或出錯等事件。Comet允許針對不同的事件指定不同的連接超時。這意味著可以給常規(guī)的請求設(shè)置很短的生命周期,但是對于響應(yīng)長連接請求的機制,可以將這個生命周期延長至幾分鐘。
       TestComet Servlet中,在連接開始時首先設(shè)置連接超時為60秒,接著啟動一個推送數(shù)據(jù)的線程。請注意,這個類含有一個 ServletResponse對象;仡^看看清單1中的event()方法,當(dāng)事件為BEGIN時,response對象被傳入到 RandomSender中。RandomSender的run()使用ServletResponse將數(shù)據(jù)發(fā)送回客戶機。因為要實現(xiàn)流風(fēng)格的Comet,所以不能關(guān)閉連接。而要使連接保持開啟。如果要實現(xiàn)長輪詢,則一旦發(fā)送完所有消息后,就要關(guān)閉連接。
       第五,編寫客戶端。在客戶端,發(fā)出AJAX請求。請求和常規(guī)請求差不多。程序清單3測試了最基本的AJAX請求,它基于XMLHttpRequest,能夠很好地響應(yīng)來自Comet服務(wù)器的事件?蛻舳嗽趓eadystate為3時(數(shù)據(jù)仍在傳輸中)讀取數(shù)據(jù),從而無須關(guān)閉連接,就能讀取處理服務(wù)器端返回的數(shù)據(jù),將它顯示在瀏覽器上。
       第六,運行程序。首先進(jìn)行部署,為了使程序正常運行,先要刪除本應(yīng)用的lib目錄下的catalina.jar,如果不這么做,會出現(xiàn)異常:java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.AnnotationProcessor。
       最后,重啟Tomcat6,用FireFox瀏覽器調(diào)用主頁面index.jsp,就可以看到隨機數(shù)不斷地涌現(xiàn)。
       3 結(jié)束語
       采用Comet技術(shù)實現(xiàn)的Java Web實時系統(tǒng)帶來了全新的交互性,目前Java Web服務(wù)器正在為實現(xiàn)Comet提供成熟、穩(wěn)定的技術(shù),不久的將來,Comet將成為Servlet 3.0和JavaEE6的標(biāo)準(zhǔn)的一部分。
       參考文獻(xiàn)
       [1] GALPIN M. Developing with Comet and Java [EB/OL].(2009-05-26)[2009-08-18].http://www.ibm.com/developerworks/web/library/wa-cometjava/index.html.
       [2] Apache Software Foundation. Advanced IO and Tomcat [EB/OL]. [2009-09-05].http://tomcat.apache.org/tomcat-(未完,下一頁

      

    頁碼選擇:1 2 3
    相關(guān)專業(yè)論文
    1 淺析Comet技術(shù)在JavaWe
    推薦專業(yè)論文
    1 淺議財政三項制度改革
    2 國家英語四級考試寫作解題技巧
    3 用VDF法從數(shù)碼照片中快速提取植
    4 轉(zhuǎn)型期水資源配置的公共政策:準(zhǔn)市
    5 政府應(yīng)該采取有力措施解決大學(xué)生就
    6 淺談工程機械現(xiàn)場修理手段的現(xiàn)代化
    7 元認(rèn)知理論在護(hù)理技能教學(xué)中的應(yīng)用
    8 探析關(guān)鍵詞在學(xué)術(shù)論文中的合理使用
    9 超越競爭的差異化營銷策略
    10 淺論弱勢群體人權(quán)保護(hù)的憲法價值
    11 小型拖拉機調(diào)速器的正確使用與維護(hù)
    12 二元一次方程組的表形與消元
    13 航運策略優(yōu)化設(shè)計
    14 釣魚臺地貌的宣傳推廣與旅游可持續(xù)
    15 神經(jīng)外科醫(yī)院感染相關(guān)因素分析


    設(shè)為首頁  加入收藏  下載與付款  上傳課件  資料征集  論壇與信息發(fā)布  期刊雜志推介  免責(zé)聲明  常見問題   分類說明  聯(lián)系本站  會員登錄
    課件009教育資源網(wǎng) 版權(quán)所有