JICQ設(shè)計文檔演示課件_第1頁
JICQ設(shè)計文檔演示課件_第2頁
JICQ設(shè)計文檔演示課件_第3頁
JICQ設(shè)計文檔演示課件_第4頁
JICQ設(shè)計文檔演示課件_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

作者:導(dǎo)師:Java即時通信工具(JICQ)1

簡介

Java即時通信系統(tǒng)(JICQ)是以Java語言為實現(xiàn)的網(wǎng)絡(luò)即時通信工具,包括服務(wù)器端和客戶端,可以在企業(yè)內(nèi)部網(wǎng)絡(luò)和互聯(lián)網(wǎng)上運行。使用JICQ可以和好友進行交流,信息即時發(fā)送,即時回復(fù),傳輸文件等功能。本系統(tǒng)充分利用了Java語言的平臺無關(guān)性等眾多優(yōu)點,主要采用了Socket網(wǎng)絡(luò)編程接口、多線程、輸入輸出流、Swing界面編程技術(shù),為我們構(gòu)建一個跨平臺的真正暢通的網(wǎng)絡(luò)信息交換工具。2

性能需求

客戶端(JICQ)與服務(wù)器端、客戶端與客戶端能夠順利進行短信收發(fā)功能,短信內(nèi)容不能超過200字符,短信發(fā)送延遲時間小于6秒,否則消息發(fā)送失敗,并向用戶返回失敗原因。服務(wù)器端需要同時響應(yīng)最低500個用戶的訪問量。3 JICQ系統(tǒng)部署圖Java即時通信系統(tǒng)的服務(wù)器端包括JICQ服務(wù)器程序(其監(jiān)聽9000端口)和數(shù)據(jù)庫服務(wù)器(本系統(tǒng)采用MSSQLServer2000);客戶端為JICQ即時通信工具軟件。

5

JICQ基本功能特點

1.客戶端(JICQ)向服務(wù)器的新用戶注冊功能。2.客戶端(JICQ)與服務(wù)器端之間的通信功能。3.客戶端(JICQ)之間的短信發(fā)送功能。4.客戶端(JICQ)之間的文件傳輸功能。5.網(wǎng)友分組的管理:好友組、陌生人組、黑名單組6.添加/刪除好友。7.服務(wù)器端存儲JICQ用戶表、好友列表、離線消息。 在客戶端存儲好友資料和聊天記錄。

6JICQ用例圖7JICQ用戶登陸活動圖9客戶機(JICQ)之間的通信活動圖10客戶機(JICQ)之間的文件傳送11刪除好友活動圖13JICQ數(shù)據(jù)庫物理模型圖14JICQ數(shù)據(jù)庫結(jié)構(gòu)設(shè)計Java即時通信系統(tǒng)的數(shù)據(jù)庫服務(wù)器為MSSQLServer2000,數(shù)據(jù)庫名稱為JavaICQ,其中主要包括數(shù)據(jù)表Users、Friends、OfflineMsg。表名用途描述Users系統(tǒng)的用戶表存儲用戶的基本信息,保護信息,在線狀態(tài),以及在線時的IP地址,端口號等信息。Friends用戶的好友表存儲用戶號碼,好友號碼,以及好友類型等信息。OfflineMsg離線消息表存儲用戶的離線消息,在用戶上線時返回并消除。15JICQ系統(tǒng)類包Message包為JICQ系統(tǒng)的消息類包,其中包含有JICQ系統(tǒng)定義的短消息類型,為服務(wù)器與客戶端所共用;Server包為系統(tǒng)的服務(wù)器端程序類包,運行在服務(wù)器端機器;Client包為系統(tǒng)的客戶端程序類包,運行在客戶端機器。

17消息類消息類為即時通信系統(tǒng)中,客戶端與服務(wù)器端、客戶端與客戶端的通信基礎(chǔ)類。Message為消息類的基類,OrdinaryMsg、RegisterMsg、FinderSetMsg、FinderMsg、LoginedMsg、InformLogonMsg為它的派生類。Message消息基類,包含有所有消息的類型,以及基本屬性。RegisterMsg為注冊消息類,包含有所有注冊屬性。OridnaryMsg為普通的消息類,主要用于聊天、登陸、注銷等消息。FinderMsg為搜索請求消息類,包含有搜索類型,請求內(nèi)容。UserBasicInfor類型的網(wǎng)友數(shù)組。

LoginedMsg為返回的登陸消息類,其中包含有在線好友的列表。InformLogonMsg為通知在線好友的消息類,其中主要包含有當(dāng)前用戶的IP地址與端口。18客戶端JICQ線程控制客戶端JICQ主要由監(jiān)聽線程、消息處理線程控制。首先由監(jiān)聽線程監(jiān)聽消息,當(dāng)有消息來到時,啟動消息處理線程處理消息,最后由消息線程將消息通知用戶邊界對象。另外,客戶端還有一個能與服務(wù)器保持聯(lián)絡(luò)的線程,每兩分鐘向服務(wù)器通知一次,表明該客戶端仍然在線。

19服務(wù)器對客戶端JICQ的響應(yīng)邏輯1.對用戶注冊功能響應(yīng);2.對用戶登陸的響應(yīng);3.對用戶注銷的響應(yīng);4.對用戶搜索的響應(yīng);5.對添加好友的響應(yīng)

;6.對刪除好友的響應(yīng):21客戶端JICQ程序界面設(shè)計

JICQ系統(tǒng)登錄對話框

22注冊向?qū)ЖD―申請JICQ號碼

23注冊向?qū)ЖD―網(wǎng)絡(luò)設(shè)置

25注冊向?qū)ЖD―注冊成功

26查找向?qū)ЬW(wǎng)友結(jié)果對話框

29客戶端JICQ主面板

30發(fā)送消息對話框

31客戶端JICQ滑動按鈕組工作原理主要使用了Swing界面類中的JPanel組件,Timer組件,自定義的ImageButton組件。每當(dāng)用戶單擊按鈕時,激發(fā)Timer事件,每20毫秒展開或者縮小這三個JPanel組件,重新計算按鈕位置,以便于產(chǎn)生動畫效果。自定義的ImageButton組件實現(xiàn)的接收短消息事件,每當(dāng)有短消息來到時,ImageButton就會發(fā)生相應(yīng)的動作,比如閃爍或者跳躍并發(fā)出聲音。32客戶端JICQ消息事件源與監(jiān)聽器原理

事件源是從監(jiān)聽端口接收到消息的線程,由事件源來注冊監(jiān)聽器,發(fā)送自定義的消息事件對象,監(jiān)聽器為實現(xiàn)消息監(jiān)聽接口的一組頭像組件。當(dāng)消息事件發(fā)生時,事件源把短消息事件對象發(fā)送給頭像按鈕組件,頭像按鈕組件就會調(diào)用消息處理方法,完成象閃爍,跳躍,發(fā)出聲音等反應(yīng)。

33服務(wù)器端JICQ線程池原理多線程技術(shù)主要解決處理器單元內(nèi)多個線程執(zhí)行的問題,它可以顯著減少處理器單元的閑置時間,增加處理器單元的吞吐能力。但如果對多線程應(yīng)用不當(dāng),會增加對單個任務(wù)的處理時間。假設(shè)在一臺服務(wù)器完成一項任務(wù)的時間為TT1創(chuàng)建線程的時間

T2在線程中執(zhí)行任務(wù)的時間,包括線程間同步所需時間

T3線程銷毀的時間T=T1+T2+T3線程池技術(shù)正是關(guān)注如何縮短或調(diào)整T1,T3時間的技術(shù),從而提高服務(wù)器程序性能的。它把T1,T3分別安排在服務(wù)器程序的啟動和結(jié)束的時間段或者一些空閑的時間段,這樣在服務(wù)器程序處理客戶請求時,不會有T1,T3的開銷了。一般一個簡單線程池至少包含下列組成部分。線程池管理器(ThreadPoolManager):用于創(chuàng)建并管理線程池工作線程(WorkThread):線程池中線程任務(wù)接口(Task):每個任務(wù)必須實現(xiàn)的接口,以供工作線程調(diào)度任務(wù)的執(zhí)行。任務(wù)隊列:用于存放沒有處理的任務(wù)。提供一種緩沖機制。34總結(jié)與展望經(jīng)過一段時間的學(xué)習(xí)和工作,JICQ即時通信工具已經(jīng)初具雛形,實現(xiàn)了網(wǎng)絡(luò)即時通信工具的主要

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論