版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 本科生畢業(yè)論文(設(shè)計)手冊</p><p> 論文(設(shè)計)題目:JQQ即時通訊系統(tǒng)的設(shè)計與實現(xiàn)</p><p> 學(xué) 院 : 電子信息工程學(xué)院 </p><p> 專 業(yè): 網(wǎng)絡(luò)工程 </p><p> 年 級:
2、 </p><p> JQQ即時通訊系統(tǒng)的設(shè)計與實現(xiàn)</p><p> [摘 要]運用Internet和Java開發(fā)技術(shù),采用C/S模式,建立一個基于應(yīng)用的即時通訊系統(tǒng)。本系統(tǒng)實現(xiàn)了用戶注冊,用戶登陸,分組管理,好友管理,查詢用戶,用戶即時通訊,查看聊天記錄等功能。用戶注冊是通過系統(tǒng)來添加新的用戶;用戶登錄用來驗證用戶的信息是否合法;分組管理功能主要是對分組
3、的管理,如添加分組、刪除分組等;好友管理功能主要是對好友的管理,如添加好友、刪除好友等;查詢用戶是查詢所有已注冊的用戶以便加為好友進行通訊;用戶即時通訊使成為好友的雙方可以即時在線交流;查看聊天記錄保存了與好友通訊的所有記錄。</p><p> ?。坳P(guān)鍵詞]即時通訊系統(tǒng);C/S模式;TCP;UDP</p><p> JQQ instant messaging system design
4、and Implementation</p><p> Abstract: The use of Internet and Java development technologies, using C / S mode, a real-time communication system based on application. The system implements user registration,
5、user login, group administration, friends manage, query user, instant messaging, view the chat history. User registration is through the system to add new users; user login used to authenticate the user's information
6、 is legitimate; group management functions mainly for the management of groups, such as adding a group, d</p><p> Key words: Instant messaging system; C / S mode; TCP; UDP</p><p><b> 目
7、錄</b></p><p><b> 1 緒論1</b></p><p> 1.1 項目背景1</p><p> 1.2 國內(nèi)外研究現(xiàn)狀1</p><p> 1.3 預(yù)期目標和經(jīng)濟效益2</p><p> 1.4 課題簡要介紹3</p><p&g
8、t; 1.5系統(tǒng)創(chuàng)新點3</p><p><b> 2 需求分析3</b></p><p> 2.1 功能需求3</p><p> 2.1.1 用戶管理3</p><p> 2.1.2 分組管理4</p><p> 2.1.3 好友管理4</p><p&
9、gt; 2.1.4 即時通訊5</p><p> 2.2 通訊模型的特點5</p><p> 2.2.1 適用性5</p><p> 2.2.2 擴展性5</p><p> 2.3 可行性研究5</p><p> 2.3.1 技術(shù)可行性分析5</p><p> 2.3.
10、2 不確定性分析6</p><p> 2.3.3 分析結(jié)論6</p><p> 2.4 運行環(huán)境6</p><p><b> 3 概要設(shè)計6</b></p><p> 3.1 框架設(shè)計6</p><p> 3.2 拓撲結(jié)構(gòu)7</p><p> 3.3
11、 功能設(shè)計9</p><p> 3.2.1 用戶注冊模塊9</p><p> 3.2.2 用戶登錄模塊10</p><p> 3.2.3分組管理模塊10</p><p> 3.2.4 好友管理模塊10</p><p> 3.2.5 查詢用戶模塊11</p><p> 3.
12、2.6 即時通訊模塊11</p><p> 3.2.7 聊天記錄模塊12</p><p> 3.4 設(shè)計原則及一般要求12</p><p><b> 4 系統(tǒng)設(shè)計12</b></p><p> 4.1 模塊設(shè)計12</p><p> 4.2 即時通訊系統(tǒng)關(guān)系型數(shù)據(jù)庫的實現(xiàn)12
13、</p><p> 4.2.1 數(shù)據(jù)庫分析13</p><p> 4.2.2 數(shù)據(jù)庫概念設(shè)計13</p><p> 4.2.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計14</p><p><b> 5 系統(tǒng)實現(xiàn)15</b></p><p> 5.1 注冊模塊15</p><p&
14、gt; 5.2 登錄模塊17</p><p> 5.3 分組管理模塊18</p><p> 5.3.1添加分組18</p><p> 5.3.2刪除分組20</p><p> 5.4 好友管理模塊21</p><p> 5.4.1 添加好友21</p><p> 5.4
15、.2 刪除好友23</p><p> 5.5 查詢用戶模塊24</p><p> 5.6 即時通訊模塊25</p><p> 5.7 聊天記錄模塊26</p><p><b> 6 測試報告28</b></p><p> 6.1 測試基本要求28</p><
16、;p> 6.1.1 內(nèi)容檢查28</p><p> 6.1.2 易用性測試28</p><p> 6.1.3 功能檢查28</p><p> 6.1.4 容錯性測試28</p><p> 6.2測試用例方法舉例29</p><p> 6.2.1 功能測試29</p><
17、p> 6.2.3 性能測試29</p><p> 結(jié)論及尚存在的問題30</p><p><b> 參考文獻30</b></p><p><b> 致謝31</b></p><p><b> 1 緒論</b></p><p>
18、即時通訊軟件的出現(xiàn)正在逐漸改變?nèi)藗兊臏贤ㄅc交際方式。無論近在咫尺,還是遠隔重洋,通訊也只是在鍵盤和鼠標之間就可以解決問題。即時通訊服務(wù)非常適合企業(yè)內(nèi)部或企業(yè)和客戶之間的交流。網(wǎng)絡(luò)聊天程序,越來越影響著我們的網(wǎng)絡(luò)生活。</p><p> 隨著全球信息化進程的不斷發(fā)展,網(wǎng)絡(luò)也在飛速發(fā)展。出于高效、快速地處理各種事務(wù)的目的,越來越多的企業(yè)和單位在其內(nèi)部使用局域網(wǎng)來進行工作和交流。在內(nèi)部局域網(wǎng)的幫助下,企業(yè)得以簡化信息
19、流程,提高信息交換的速度,從而提高工作效率。然而,隨著局域網(wǎng)規(guī)模的擴大,業(yè)務(wù)量的增加,在局域網(wǎng)上運行的應(yīng)用越來越多,如知識庫、網(wǎng)絡(luò)會議、數(shù)據(jù)庫應(yīng)用和數(shù)據(jù)的同步與備份等,這些應(yīng)用對局域網(wǎng)的信息吞吐、處理能力的要求也越來越高。這些在原有局域網(wǎng)設(shè)計之初未曾考慮到的新情況的出現(xiàn)使得局域網(wǎng)不堪重負,容易發(fā)生信息阻塞,此時,局域網(wǎng)不但不能提高生產(chǎn)效率,反而成為工作效率的瓶頸?;赟ocket的局域網(wǎng)聊天室是局域網(wǎng)通信軟件的具體實例之一,它很好地詮釋
20、了Socket通信的原理,并且在局域網(wǎng)部通信、教學(xué)、討論等應(yīng)用中都具有一定的實用價值。它具有信息收發(fā)速度快,保密性好,占用網(wǎng)絡(luò)帶寬資源低,占用服務(wù)器吞吐能力低,易于編程實現(xiàn)等優(yōu)點。</p><p><b> 1.1 項目背景</b></p><p> 即時聊天使親友的溝通突破時空極限,使人與人的溝通突破上下級極限,使陌生人的溝通突破環(huán)境極限,使自我與外界的溝通突破
21、心理極限…… </p><p> 作為使用頻率最高的網(wǎng)絡(luò)軟件,即時聊天已經(jīng)突破了作為技術(shù)工具的極限,被認為是現(xiàn)代交流方式的象征,并構(gòu)建起一種新的社會關(guān)系。它是迄今為止對人類社會生活改變最為深刻的一種網(wǎng)絡(luò)新形態(tài),沒有極限的溝通將帶來沒有極限的生活。 </p><p> 聊天一直是網(wǎng)民們上網(wǎng)的主要活動之一,網(wǎng)上聊天的主要工具已經(jīng)從初期的聊天室、論壇變?yōu)橐訫SN、OICQ(又稱QQ)為代表的
22、即時通訊軟件。迄今為止,全球約有一億多人使用即時通訊軟件在網(wǎng)上交流。中國網(wǎng)民慣用的即時聊天工具騰訊QQ從1999年2月誕生到現(xiàn)在,注冊用戶已超過1.6億,在線用戶最高時超過200萬人,而每天獨立上線人數(shù)更是達到一千二百多萬,擁有活躍用戶5500萬,幾乎覆蓋所有中國網(wǎng)民。 </p><p> 即時通訊工具使用頻率之高,超出任何一種網(wǎng)絡(luò)軟件。電子郵件曾是最重要的通訊交流工具,是互聯(lián)網(wǎng)最早的“殺手級應(yīng)用。到2004年
23、,即時通訊軟件已取代電子郵件,成為最流行的互聯(lián)網(wǎng)通訊工具</p><p> 1.2 國內(nèi)外研究現(xiàn)狀</p><p> 即時通訊軟件,幾乎是每一個上網(wǎng)用戶都必備的聯(lián)絡(luò)工具。即時通訊軟件除了能夠讓您迅速地在網(wǎng)上找到自己的朋友和工作伙伴,還可以實時交談和傳遞信息,而且,現(xiàn)在不少即時通訊軟件還集成了文件共享、語音聊天、網(wǎng)絡(luò)會議等功能。截止到目前,全球約有近3億多人使用即時通訊軟件進行交流,正因
24、為即時通訊軟件擁有數(shù)以億計的用戶和迅速增長的市場,所以各個公司都盯上了中國這個潛在的最大市場,一時間,即時通訊市場硝煙四起。除了騰訊QQ和國外的幾款著名即時通訊軟件紛紛推出新版本,網(wǎng)易也推出了一種新的即時通訊軟件——網(wǎng)易泡泡。朗瑪公司也推出了名為UC的通訊工具。</p><p> 即時通訊軟件最早發(fā)布于1996年11月15日,以色列特拉維文的Mirabilis Ltd.發(fā)表了一個題為《E.T SURF HOME
25、:MIRABILIS LTD. PROVIDES NEW SOLUTIONS FOR PEER-TO-PEER INTERNET COMMUNICATIONS》的新聞稿,同時發(fā)布了他們新產(chǎn)品ICQ(I Seek You)的Beta測試版。這天標志著Internet上的第一個成熱的即時通訊系統(tǒng)(Instant Message System)的誕生。即時通訊服務(wù)在誕生之后的幾年時間得到了迅猛發(fā)展,成為新增Internet用戶的3個主要應(yīng)用之
26、一(WEB,電子郵件和即時通訊)。</p><p> 在國內(nèi),1999年2月,深圳騰訊公司正式發(fā)布OICQ99 beta build 0210,開通騰訊即時通訊服務(wù)。2000年5月,騰訊QQ同時在線用戶突破10萬;2001年2月l0日,騰訊QQ同時在線用戶突破100萬。2004年4月份騰訊QQ同時在線人數(shù)最高記錄已經(jīng)突破了600萬大關(guān),現(xiàn)在騰訊公司正在把即時通訊系統(tǒng)往移動通訊方向擴展,如今已經(jīng)將即時通訊與手機短
27、信息(Short Messaging Service ,SMS)成功結(jié)合起來。即時通訊軟件涉及和影響的領(lǐng)域已近越來越廣,其競爭也越來越激烈。國內(nèi)QQ最大的敵手朗瑪UC從2001年開始研發(fā),2002年的12月份UC正式發(fā)布,并且首創(chuàng)了很多技術(shù):UC是國內(nèi)第一個做場景聊天的;UC是第一個把同學(xué)錄和校友錄結(jié)合的;第一個把即時通訊與休閑游戲相結(jié)合的;第一個把發(fā)送動畫與即時通訊相結(jié)合的。在一年的發(fā)展里,UC一度達到峰值在線30萬人,注冊用戶達到7
28、000萬。</p><p> 縱觀即時通訊軟件業(yè)的迅速發(fā)展,設(shè)計并開發(fā)一個即時通訊平臺,對于現(xiàn)階段的學(xué)習(xí)和研究,都是極為有意義的,基于這個前提和起因,我選擇了設(shè)計一個名為JQQ的即時通訊系統(tǒng)作為我的畢業(yè)設(shè)計。</p><p> 1.3 預(yù)期目標和經(jīng)濟效益</p><p> 即時通訊簡稱IM(Instant Messaging),它是一種面向終端使用者的網(wǎng)絡(luò)溝通
29、工具服務(wù),使用者可以通過安裝了即時通信的終端機進行兩人或多人之間的實時溝通。</p><p> 即時通信利用的是互聯(lián)網(wǎng)線路,通過文字、語音、視頻、文件的信息交流與互動,有效節(jié)省了溝通雙方的時間與經(jīng)濟成本。即時通信不再是一個單純的聊天工具,它已經(jīng)發(fā)展成集交流、資訊、娛樂、搜索、電子商務(wù)、辦公協(xié)作和企業(yè)客戶服務(wù)等為一體的綜合化信息平臺。</p><p> 即時通訊系統(tǒng)一旦開發(fā)完成,只需要一
30、些基本維護和簡單擴展的費用,產(chǎn)生的經(jīng)濟效益源源不斷,相當(dāng)樂觀,有著很廣闊的發(fā)展前景。</p><p> 1.4 課題簡要介紹</p><p> 本課題之前:充分調(diào)查了市場主流類似通訊軟件的優(yōu)點與缺點;對大數(shù)操作者的年齡、職業(yè)、文化層次等做了一系列調(diào)查;在結(jié)合行業(yè)自身的特點的同時,也充分考慮到設(shè)計者自身的條件與現(xiàn)有技術(shù)成熟程度的基礎(chǔ)上做出的一款適合大多數(shù)人使用的即時通訊軟件。</p
31、><p><b> 產(chǎn)品定位:</b></p><p> ◆大多數(shù)人能夠使用,操作者有無相關(guān)專業(yè)知識都可</p><p><b> 主要功能有:</b></p><p><b> ◆用戶注冊</b></p><p><b> ◆用戶
32、登陸</b></p><p><b> ◆分組管理</b></p><p><b> ◆好友管理</b></p><p><b> ◆即時通訊</b></p><p><b> ◆ 查詢用戶</b></p><
33、p><b> ◆ 查詢聊天記錄</b></p><p><b> 實現(xiàn)技術(shù):</b></p><p> ◆MyEclipse 7.1</p><p> ◆SQL Server 2000 數(shù)據(jù)庫</p><p> 1.5 系統(tǒng)創(chuàng)新點 (建議改為系統(tǒng)特點)</p>&
34、lt;p> 操作簡單、方便,快捷、準確、數(shù)據(jù)存儲安全可靠,針對自身特點去除了不必要的冗余東西,使系統(tǒng)負擔(dān)最小,速度最快;采用更高的安全機制,使數(shù)據(jù)更加安全,用戶可以放心的使用。</p><p><b> 2 需求分析</b></p><p><b> 2.1 功能需求</b></p><p> 2.1.1 用
35、戶管理</p><p> 即時通訊系統(tǒng)擁有多個賬戶,允許多個用戶注冊;一個用戶可以注冊多個標識;注冊所使用的帳號類型為字母數(shù)字的組合;注冊新用戶時必須填寫符合要求的信息;注冊后只有用戶名與密碼驗證成功才能正確登錄。用戶管理如圖2-1所示。</p><p> 圖2-1 用戶管理用例圖</p><p> 2.1.2 分組管理</p><p>
36、; 分組管理部分要能夠?qū)崿F(xiàn)分組的添加與刪除,所添加的分組名稱可以是中文也可以是字母數(shù)字的組合,通過對分組的有效管理以便于更方便的管理好友。分組管理如圖2-2所示。</p><p> 圖2-2 分組管理用例圖</p><p> 2.1.3 好友管理</p><p> 用戶可以查詢所有用戶;選擇適當(dāng)?shù)目梢约訛楹糜?;一個用戶可以添加多個人為好友,一個用戶也可以被多
37、個人添加為好友;用戶可以刪除好友;用戶只可以將好友放在一個組中。好友管理如圖2-3所示。</p><p> 圖2-3 好友管理用例圖</p><p> 2.1.4 即時通訊</p><p> 即時通訊模塊用戶可以與在線的好友進行聊天,用戶首先查看好友是否在線,如果在線即可進行即時通訊,并且用戶可以查看與好友的所有聊天記錄。即時通訊如圖2-4所示。</p&
38、gt;<p> 圖2-4 即時通訊用例圖</p><p> 2.2 通訊模型的特點</p><p><b> 2.2.1 適用性</b></p><p> 作為一個一般性的模型,本通訊模型適用于無線網(wǎng)絡(luò)和Internet上現(xiàn)存的多種系統(tǒng)。模型中的JQQ可以是Internet上的應(yīng)用程序,也可以是移植到移動電話和其他各種無線
39、手持設(shè)備上的應(yīng)用程序。即時通訊和服務(wù)可以是Internet上ICQ(I seek you!的諧音)服務(wù),可以是GSM(Global System for Mobile Communications,為全球移動通訊系統(tǒng))標準中的SMS,也可以是NTT DoCoMo(日本最大的攜帶電話公司,NTT是New Technology Telescope的編寫,DoCoMo 是Do Communication Over the Mobile Net
40、work電信溝通無界限的意思)的I-MODE(information-mode,一種移動電話服務(wù))服務(wù)。</p><p><b> 2.2.2 擴展性</b></p><p> 模型具有很強的擴展性。本模型并沒有規(guī)定服務(wù)必須采用中央服務(wù)器。在模型實現(xiàn)的時候,可以使用基于中央服務(wù)器的星形結(jié)構(gòu),也可以使用對等網(wǎng)絡(luò)結(jié)構(gòu)甚至其他混合結(jié)構(gòu)。例如,深圳騰訊QQ的通訊服務(wù)系統(tǒng)使
41、用的是基于中央服務(wù)器的Client/Server的混合星型結(jié)構(gòu),而即時通訊服務(wù)使用的是對等網(wǎng)絡(luò)加客戶機——服務(wù)器結(jié)構(gòu)。</p><p><b> 2.3 可行性研究</b></p><p> 2.3.1 技術(shù)可行性分析</p><p> ?。?)項目開發(fā)過程中遇到難以克服的技術(shù)問題,該怎么辦。</p><p> 這
42、一方面,我們慶幸的是在學(xué)校我們有好多的老師在背后支持著我們,同時學(xué)校的網(wǎng)絡(luò)比較方面,給我們解決問題提供了方便。而且,憑借借閱圖書館收藏圖書更增加了我們解決技術(shù)問題的信心。</p><p> ?。?)軟件的質(zhì)量如何。</p><p> 有些應(yīng)用對實時性要求很高,如果軟件運行慢如蝸牛,即便功能完備也毫無實用價值。有些高風(fēng)險的應(yīng)用對軟件的正確性與精確性要求極高,如果軟件出了差錯而造成用戶利益損
43、失,那么軟件開發(fā)在某種意義上說也就失敗了。</p><p> 鑒于此,我們在編碼測試的時候,找專業(yè)老師作為技術(shù)支持。并且在完成之后,實際驗證可行性,同時要考慮到機器硬件設(shè)備的不同而給軟件帶來的不可預(yù)知的結(jié)果,所以在機房的不同電腦上運行軟件達到測試目的。</p><p> 2.3.2 不確定性分析</p><p> 需要格外考慮的實際情況也可以說是面臨的一個現(xiàn)實
44、問題就是:畢業(yè)生面臨著畢業(yè)與找工作,還有就是最后的畢業(yè)答辯與論文設(shè)計。這個過程中,學(xué)校會有許多有關(guān)畢業(yè)生的信息要安排,事情要處理。在進行課題設(shè)計的時候,難免會有一些格外的因素,如時間被耽誤,在規(guī)定的時間中無法完成相應(yīng)的任務(wù);有問題存在的時候,老師也恰巧也有事情,問題無法及時解決等一系列問題,都是要考慮在內(nèi)的。</p><p> 再有就是,最害怕在做系統(tǒng)的中途遇到系統(tǒng)崩潰而東西又無法保存;或者是東西全部做好之后,
45、忘記了備份,而更為不巧的是以染上了病毒,而致使幾個月的辛苦付之東流。這些是容易忽視的也是最容易出現(xiàn)的情況。所以要在設(shè)計的時候做足這方面的準備,不讓那種情況發(fā)生。</p><p> 2.3.3 分析結(jié)論</p><p> 通過上面簡要的分析,最后做出的結(jié)論是:方案可以按照時間要求、保證質(zhì)量的基礎(chǔ)上運用MyEclipse與SQL Server 2000 數(shù)據(jù)庫進行系統(tǒng)的開發(fā)。</p&
46、gt;<p><b> 2.4 運行環(huán)境</b></p><p> 操作系統(tǒng):windows2000server中文版、windows 2003 Server或者Windows XP Sp3</p><p> 數(shù)據(jù)庫:SQL Server 2000 中文個人版</p><p> 開發(fā)工具:MyEclipse 7.1<
47、/p><p> 硬件配置:CPU 1.7GHz以上,內(nèi)存512MB以上</p><p><b> 3 概要設(shè)計</b></p><p><b> 3.1 框架設(shè)計</b></p><p> 本系統(tǒng)總體框架如圖3-1所示。(此圖重畫,TCP和UDP改為黑體字)</p><p&g
48、t; 圖3-1 系統(tǒng)總體框架圖</p><p><b> 3.2 拓撲結(jié)構(gòu)</b></p><p> 系統(tǒng)的拓撲結(jié)構(gòu)如圖3-2所示。</p><p> 現(xiàn)在不少即時通訊系統(tǒng)服務(wù)的內(nèi)部拓撲中采用模式一;也有極其個別系統(tǒng)在即時通訊服務(wù)上面采用模式二(例如,深圳騰訊的QQ服務(wù)中的即時通訊服務(wù),發(fā)信者首先考慮直接與即時收信箱進行通訊,如果發(fā)現(xiàn)直
49、接通訊超時,會轉(zhuǎn)為使用服務(wù)器中轉(zhuǎn)完成通訊)。</p><p> 模式一是一種非常成熟的模式,大多數(shù)TCP/IP應(yīng)用系統(tǒng),例如SMTP服務(wù)、DNS服務(wù)、WWW服務(wù)等都是使用這種模式。模式二對于模式一是一個技術(shù)上的修正,雖然這個修正帶來了新的問題,但是其實用性是不可質(zhì)疑的;JQQ正是實用模式二作為服務(wù)模式。</p><p> JQQ的服務(wù)是由服務(wù)器構(gòu)成的;JQQ中每個實體都由一個寄主服務(wù)器
50、管理。個體必須向服務(wù)器注冊,注冊后就有可以控制的發(fā)信者和即時收件箱。發(fā)信者是獨立于即時通訊服務(wù)外的實體,而即時收信箱則存在于寄主服務(wù)器中。JQQ的通訊系統(tǒng)中只有存在發(fā)送者和接收者兩類實體。注冊后的用戶必須在服務(wù)器上建立登記表,才能知道其他用戶的存在,與其他用戶進行交流。</p><p><b> 1) TCP協(xié)議</b></p><p> TCP和UDP是TCP
51、/IP協(xié)議族的兩個主要的傳輸協(xié)議,TCP是面向連接的,UDP是面向無連接的,而實際上他們最大的區(qū)別在于為應(yīng)用協(xié)議提供不同的服務(wù),TCP協(xié)議為應(yīng)用程序提供點到點的通信:建立可靠的連接。如果有故障發(fā)生,阻礙分組到達遠程系統(tǒng),或者服務(wù)器不接受連接,客戶都會得到通知:數(shù)據(jù)可靠的交付,故障而不能交付,發(fā)送方會得到通知;具有流控的傳輸;雙工的傳輸,單個TCP連接允許同時雙向傳送數(shù)據(jù)流模式,TCP從發(fā)送方到接收方發(fā)送沒有報文邊界的字節(jié)。</p&
52、gt;<p><b> 2) UDP協(xié)議</b></p><p> UDP為應(yīng)用程序提供多對多的通信,UDP在進行通訊的應(yīng)用的數(shù)量上面,具有更大的靈活性。多個應(yīng)用可以向一個接收方發(fā)送報文,一個發(fā)送方向也可以向多個接收方發(fā)送報文。UDP還可以使用底層網(wǎng)絡(luò)的廣播和組播設(shè)施交付報文:UDP提供的是不可靠交付語義,報文可能丟失、重復(fù)或者失序,而發(fā)送方是得不到通知的;缺乏流控制;報文
53、模式,當(dāng)有數(shù)據(jù)交付的時候,必須制定報文邊界。</p><p> 3) 傳輸層協(xié)議的選定</p><p> 由于TCP和UDP的語義及其不同,如果要考慮應(yīng)用協(xié)議所要求的語義,設(shè)計者就不能不在面向連接和無連接的傳輸協(xié)議間作出選擇。利用面向連接的TCP協(xié)議,可以大大簡化應(yīng)用協(xié)議的設(shè)計工作。由于UDP不提供可靠的交付,無連接傳輸要求應(yīng)用協(xié)議提供可靠性,并在必要時,使用一種稱為自適應(yīng)重傳的復(fù)雜技
54、術(shù)。為現(xiàn)有的應(yīng)用程序增加自適應(yīng)重傳比較困難,它需要程序員具有相當(dāng)?shù)貙I(yè)知識。</p><p> 選擇TCP一個很大的缺點就是,建立和中止連接的三次握手(TCP協(xié)議提供可靠的連接服務(wù),采用三次握手建立一個連接。第一次握手:建立連接時,客戶端發(fā)送syn包(syn=j)到服務(wù)器,并進入SYN_SEND狀態(tài),等待服務(wù)器確認;第二次握手:服務(wù)器收到syn包,必須確認客戶的SYN(ack=j+1),同時自己也發(fā)送一個SYN
55、包(syn=k),即SYN+ACK包,此時服務(wù)器進入SYN_RECV狀態(tài); 第三次握手:客戶端收到服務(wù)器的SYN+ACK包,向服務(wù)器發(fā)送確認包ACK(ack=k+1),此包發(fā)送完畢,客戶端和服務(wù)器進入ESTABLISHED狀態(tài),完成三次握手。客戶端與服務(wù)器開始傳送數(shù)據(jù)),使TCP比起UDP開銷大。在考慮是用UDP還是用TCP作為域名服務(wù)系統(tǒng)的運輸層協(xié)議是,設(shè)計者往往陷入兩難的境地。一個理想的解決方案應(yīng)該既能提供可靠的數(shù)據(jù)傳輸,又不需要專
56、門的建立和釋放連接,不需要報文的反段和重組,同時還能是兩端的空閑狀態(tài)所處的時間最短。TCP什么都好,只可惜他需要建立和釋放連接。</p><p> 還有一個嚴重的問題就是TCP在空閑的連接上根本不發(fā)送任何分組。假設(shè)客戶與某個服務(wù)器建立了連接,并與之交換請求和響應(yīng),接著便崩潰了。因為客戶已經(jīng)崩潰了,它就不會再發(fā)送任何請求了,然而,服務(wù)器到目前為止對它收到的所有請求都進行了響應(yīng),它便不會再向客戶發(fā)送更多的數(shù)據(jù)。這種
57、情況下,服務(wù)器擁有分配給該連接的數(shù)據(jù)結(jié)構(gòu)(包括緩存空間),這些資源不能被重新分配。服務(wù)器是設(shè)計成始終運行的。如果不斷有客戶崩潰,服務(wù)器就會耗盡資源(如套接字、緩存空間、TCP連接)從而中止運行。</p><p><b> 3.3 功能設(shè)計</b></p><p> 系統(tǒng)功能設(shè)計,如圖3-3所示。</p><p> 圖3-3 系統(tǒng)功能設(shè)計圖
58、</p><p> 3.2.1 用戶注冊模塊</p><p> 用戶需要正確填寫自己的用戶名、密碼、真實姓名、性別、個性簽名等信息,如果用戶名合法且未被占用,則可以注冊成功。用戶注冊如圖3-4所示。(重畫圖3-4,3-5,3-6,3-7,3-8,3-9,4-1,4-2,4-3,方框里的字體要清楚)</p><p> 圖3-4 用戶注冊流程圖</p>
59、<p> 3.2.2 用戶登錄模塊</p><p> 用戶需要正確填寫自己的用戶名、密碼,如果驗證成功,則可以進入到JQQ即時通訊系統(tǒng)主面板,與在線好友進行即時通訊。用戶登錄如圖3-5所示。</p><p> 圖3-5 用戶登錄流程圖</p><p> 3.2.3分組管理模塊</p><p> 分組管理模塊包括對分組的
60、添加與刪除。添加分組過程中,分組不能為空并且不能有重復(fù)的分組。刪除分組過程中,只要選定要刪除的分組,即可刪除成功。分組管理如圖3-6所示。</p><p> 圖3-6 分組管理流程圖</p><p> 3.2.4 好友管理模塊</p><p> 好友管理模塊包括對好友的添加與刪除。添加好友過程中,好友不能為空,不能加自己為好友,要添加的好友必須存在并且不能有重
61、復(fù)的好友。刪除好友過程中,只要選定所屬分組下的相應(yīng)好友,即可刪除成功。好友管理如圖3-7所示。</p><p> 圖3-7 好友管理流程圖</p><p> 3.2.5 查詢用戶模塊</p><p> 查詢用戶模塊列出了除了自己的所有用戶的基本信息包括是否在線,用戶可以根據(jù)需要加為好友并進行通訊,對于在線狀態(tài)的好友可以進行在線交流。查詢用戶如圖3-8所示。&l
62、t;/p><p> 圖3-8 查詢用戶流程圖</p><p> 3.2.6 即時通訊模塊</p><p> 即時通訊模塊是本系統(tǒng)最關(guān)鍵的環(huán)節(jié)與目的所在。用戶可以選擇分組中的在線好友進行即時通訊,并且當(dāng)交流完畢時自動保存聊天記錄。即時通訊如圖3-9所示。</p><p> 圖3-9 即時通訊流程圖</p><p>
63、 3.2.7 聊天記錄模塊</p><p> 聊天記錄模塊主要記錄了與相應(yīng)好友的所有聊天內(nèi)容,可以方便的瀏覽一些重要信息和談?wù)撛掝}等。</p><p> 3.4 設(shè)計原則及一般要求</p><p> 參照各模塊的功能與具體的特點,設(shè)計的整個即時通訊系統(tǒng)應(yīng)達到以下目的:</p><p> ?。?)穩(wěn)定性。整個系統(tǒng)應(yīng)能穩(wěn)定運行,硬件配置的局
64、部改變不會影響整體的正常運行,其它系統(tǒng)的差錯不會導(dǎo)致即時通訊系統(tǒng)無法正確運作。</p><p> ?。?)準確性。系用戶按操作要求操作產(chǎn)生的數(shù)據(jù)與數(shù)據(jù)庫產(chǎn)生的變化應(yīng)嚴格保持一致,杜絕錯誤、異常等情況的出現(xiàn)。</p><p> ?。?)安全性。所有數(shù)據(jù)定時備份,錯誤的出現(xiàn)由系統(tǒng)自動記錄備份文件,以備查驗,避免用戶誤操作而造成不必要的損失。</p><p> ?。?)易
65、使用性。即時通訊系統(tǒng)的界面與操作人員的交互性好,用Client/Server(客戶端/服務(wù)器)結(jié)構(gòu)。</p><p><b> 4 系統(tǒng)設(shè)計</b></p><p><b> 4.1 模塊設(shè)計</b></p><p> 功能模塊設(shè)計如表4-1所示:</p><p> 表4-1 功能模塊設(shè)計表
66、</p><p> 4.2 即時通訊系統(tǒng)關(guān)系型數(shù)據(jù)庫的實現(xiàn)</p><p> Microsoft SQL Server 2000 是一個高性能的客戶端/服務(wù)器結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)。SQL Server 2000是為支持高容量的事務(wù)處理(比如在線訂購錄入、存貨目錄、記賬或制造)以及數(shù)據(jù)倉庫和決策支持系統(tǒng)而設(shè)計的。它運行在Microsoft Windows NT4或Mic
67、rosoft Windows 2000 Server上—基于使用Intel處理器的網(wǎng)絡(luò)。也能夠為其他的Microsoft操作系統(tǒng)提供很多客戶端工具和網(wǎng)絡(luò)接口。由于SQL Server的開放結(jié)構(gòu),其他系統(tǒng)也能和它交互操作。使用它可以完成事務(wù)處理、存儲和分析數(shù)據(jù)以及創(chuàng)建新的應(yīng)用程序。其中SQL Server的RDBMS(Relational Database Management System,關(guān)系型數(shù)據(jù)庫管理系統(tǒng))負責(zé)維護數(shù)據(jù)庫中數(shù)據(jù)之間
68、的關(guān)系,確保正確的存儲數(shù)據(jù)和不違反定義數(shù)據(jù)之間的規(guī)則,而且在系統(tǒng)發(fā)生錯誤時將所有數(shù)據(jù)恢復(fù)到某個已知的、具備一致性的檢查點上。SQL Server 2000就是關(guān)系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查詢、存儲和檢索。SQL Server 2000</p><p> 4.2.1 數(shù)據(jù)庫分析</p><p> 即時通訊系統(tǒng)需求包括對用戶信息、分組信息、好友信息等各方面信息的管理,這些信
69、息都需要保存在數(shù)據(jù)庫中,因此需要建立一些相應(yīng)的表結(jié)構(gòu)來存儲這些相應(yīng)的數(shù)據(jù)。</p><p> 針對這些情況,我建立了以下若干表來存儲相應(yīng)的信息:</p><p> 表名:用戶表,分組表,好友表等。</p><p> 1) 用戶表:包括的數(shù)據(jù)項有:用戶名、密碼、真實姓名、性別、個性簽名、是否在線、登錄IP、綁定端口等。</p><p>
70、 2) 分組表:包括的數(shù)據(jù)項有:分組名稱、用戶等。</p><p> 3) 好友表:包括的數(shù)據(jù)項有:好友名稱、所在分組、用戶等。</p><p> 4.2.2 數(shù)據(jù)庫概念設(shè)計</p><p> 根據(jù)前面的需求分析和概要設(shè)計規(guī)劃出本系統(tǒng)所使用的實體對象,分別為:用戶實體、分組實體、好友實體。下面將給出幾個關(guān)鍵實體的E-R圖。</p><p&g
71、t;<b> (1) 用戶實體</b></p><p> 用戶實體包括用戶名、密碼、真實姓名、性別、個人簽名、是否在線、登錄IP、綁定端口等。其E-R圖如下所示。</p><p> 圖4-1 用戶實體E-R圖</p><p><b> (2) 分組實體</b></p><p> 分組實體包
72、括分組名稱、用戶等。其E-R圖如下所示。</p><p> 圖4-2 分組實體E-R圖</p><p><b> (3) 好友實體</b></p><p> 好友實體包括好友名稱、所在分組,用戶等。其E-R圖如下所示。</p><p> 圖4-3 好友實體E-R圖</p><p> 4.
73、2.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計</p><p> 根據(jù)上面所做的總結(jié),再參考系統(tǒng)的實際需要,表及邏輯結(jié)構(gòu)如下圖所示:</p><p> 1) 用戶表users,如下所示。</p><p><b> 表4-2 用戶表</b></p><p> 2) 分組表groups,如下所示。</p><p>
74、;<b> 表4-3 分組表</b></p><p> 3) 好友表friends,如下所示。</p><p><b> 表4-4 好友表</b></p><p><b> 5 系統(tǒng)實現(xiàn)</b></p><p><b> 5.1 注冊模塊</b>
75、</p><p> 如果用戶名不存在,則可以使用此用戶名,然后輸入用戶的密碼、真實姓名、性別個性簽名等成功注冊。注冊模塊如圖5-1所示。</p><p> 圖5-1 用戶注冊圖</p><p><b> 主要代碼實現(xiàn)如下:</b></p><p> public int Verify() { //驗證用戶名
76、是否存在</p><p> String username = txtUserName.getText().trim();</p><p> UserItem ui = new UserItem();</p><p> ui.setUsername(username);</p><p> Protocal proVerifyUse
77、r = new Protocal(ProtocalNumber.VERIFYUSER2, "",ui);</p><p> SendPacket sp = new SendPacket(proVerifyUser);</p><p> int result = ((Integer) sp.Send()).intValue();</p><p&
78、gt; return result;}</p><p> public void actionPerformed(ActionEvent e) { //用戶注冊</p><p> JButton btnSource = (JButton) e.getSource();</p><p> if (btnSource == btnOK) {</p&g
79、t;<p> int res = Verify();</p><p> if (res == 0) {</p><p> regUser = new UserItem(username, password, name,sex, sign, "", false, 0);</p><p> Protocal proAddUse
80、r = new Protocal(ProtocalNumber.ADDUSER,"", regUser);</p><p> SendPacket sp = new SendPacket(proAddUser);</p><p> int result = ((Integer) sp.Send()).intValue();</p><p>
81、 if (result !=0) { JOptionPane.showMessageDialog(this, "注冊成功,請登陸!","注冊用戶", JOptionPane.INFORMATION_MESSAGE);</p><p> new frmLogin();}}}}}</p><p> 確認信息填寫無誤后,點擊注冊按鈕就可注冊成功&
82、lt;/p><p><b> 5.2 登錄模塊</b></p><p> 本部分主要用于用戶的登錄,只有在注冊后才可以進入系統(tǒng),用戶登錄時將按照用戶名和密碼進行驗證,當(dāng)輸入錯誤時會出現(xiàn)相應(yīng)的提示,當(dāng)用戶名和密碼都正確時進入程序主界面,才能進行日常管理工作。該模塊的界面設(shè)計如圖5-3所示。</p><p><b> 圖5-3 登錄界面
83、</b></p><p> 如果登錄身份驗證成功,則進入主界面如圖5-4所示:</p><p><b> 圖5-4 主界面</b></p><p> 如果用戶名或密碼錯誤則會提示,需要重新輸入。</p><p><b> 主要代碼實現(xiàn)如下:</b></p><
84、p> public void actionPerformed(ActionEvent e) {</p><p> JButton btnSource = (JButton) e.getSource(); </p><p> if (btnSource == btnLogin) {</p><p> int bindport = CommonD
85、ata.GetBindPort();</p><p> String loginIP = CommonData.GetLocalIP();</p><p> UserItem ui = new UserItem();</p><p> ui.setUsername(username);</p><p> ui.setPas
86、sword(password);</p><p> ui.setBindport(bindport); </p><p> ui.setLoginIP(loginIP);</p><p> Protocal proVerifyUser = new Protocal(ProtocalNumber.VERIFYUSER,"",
87、ui);</p><p> SendPacket sp = new SendPacket(proVerifyUser);</p><p> int result = ((Integer) sp.Send()).intValue();</p><p> if (result !=0) {</p><p> JOptionPane.
88、showMessageDialog(this,"登錄成功!", "用戶登錄",</p><p> JOptionPane.INFORMATION_MESSAGE);</p><p> this.dispose();</p><p> new FrmMain(ui.getUsername());</p>
89、<p><b> } </b></p><p><b> else{</b></p><p> JOptionPane.showMessageDialog(this, "用戶名或密碼錯誤!", "用戶登錄",</p><p> JOptionPane.IN
90、FORMATION_MESSAGE);</p><p> this.txtUserName.setText(""); </p><p> this.txtPassword.setText("");}</p><p><b> }</b></p><p><b>
91、; }</b></p><p> 5.4 好友管理模塊</p><p> 5.4.1 添加好友</p><p> 主要功能是添加已存在的用戶為好友以便進行通訊,如圖5-7所示。</p><p> 圖5-7 添加好友界面</p><p><b> 主要實現(xiàn)代碼如下:</b>&
92、lt;/p><p> public int Verify() { //驗證用戶是否存在</p><p> String username = jt.getText().trim();</p><p> UserItem ui = new UserItem();</p><p> ui.setUsername(username);
93、</p><p> Protocal proVerifyUser = new Protocal(ProtocalNumber.VERIFYUSER2, "",ui);</p><p> SendPacket sp = new SendPacket(proVerifyUser);</p><p> int result = ((Integer
94、) sp.Send()).intValue();</p><p> return result; }</p><p> public void actionPerformed(ActionEvent e) { //添加好友</p><p> if (e.getSource() == btnok) {</p><p> friend
95、 = (String) jt.getText().trim();</p><p> if (friend.equals("")) {</p><p> JOptionPane.showMessageDialog(this, "好友名稱不能為空!", "添加好友",</p><p> JOptionPa
96、ne.INFORMATION_MESSAGE);</p><p><b> return;}</b></p><p> if (friend.equals(CommonData.currUser.getUsername())) {</p><p> JOptionPane.showMessageDialog(this, "你不
97、能加自己為好友!", "添加好友",</p><p> JOptionPane.INFORMATION_MESSAGE);</p><p> jt.setText("");</p><p><b> return;}</b></p><p> int ver
98、ify = Verify();</p><p> if (verify == 0) {</p><p> JOptionPane.showMessageDialog(this, "你要添加的好友不存在!", "添加好友",</p><p> JOptionPane.INFORMATION_MESSAGE);</p
99、><p> jt.setText("");</p><p> return;} </p><p><b> else {</b></p><p> ui = new UserItem(); </p><p> ui.setUsername(friend);<
100、;/p><p> fi = new FriendItem();</p><p> fi.setFriend(ui);</p><p> String g_name = (String) choice.getSelectedItem();fi.setGroup_in(g_name);</p><p> fi.setOwner_fri
101、end(CommonData.currUser.getUsername());</p><p> Protocal proaddfriend = new Protocal(ProtocalNumber.ADDFRIEND,</p><p> CommonData.currUser.getUsername(), fi);</p><p> SendPacket
102、sp = new SendPacket(proaddfriend);</p><p> int result = ((Integer) sp.Send()).intValue();</p><p> if (result == 1) {JOptionPane.showMessageDialog(this, "此好友已添加過!", "添加好友",
103、</p><p> JOptionPane.INFORMATION_MESSAGE);</p><p> jt.setText("");</p><p><b> return;}</b></p><p> if (result == 0) {JOptionPane.showMessag
104、eDialog(this, "添加好友成功!", "添加好友",</p><p> JOptionPane.INFORMATION_MESSAGE);</p><p> this.dispose();}}}}</p><p> 5.4.2 刪除好友</p><p> 主要功能是刪除相應(yīng)分組下的
105、對應(yīng)好友</p><p><b> 主要實現(xiàn)代碼如下:</b></p><p> public void actionPerformed(ActionEvent e) { //刪除好友</p><p> if (e.getSource() == btnok) {</p><p> try {group = c
106、hoiceGroup.getSelectedItem().toString();</p><p> friend = choiceFriend.getSelectedItem().toString(); </p><p> FriendItem fi = new FriendItem();</p><p> fi.setOwner_friend(Common
107、Data.currUser.getUsername());</p><p> fi.setGroup_in(group); </p><p> UserItem ui = new UserItem();</p><p> ui.setUsername(friend);</p><p> fi.setFriend(
108、ui);</p><p> Protocal proExit = new Protocal(ProtocalNumber.DELETEFRIEND,</p><p> CommonData.currUser.getUsername(), fi);</p><p> SendPacket sp = new SendPacket(proExit);</p&g
109、t;<p> int result = ((Integer) sp.Send()).intValue();</p><p> if (result != 0) {JOptionPane.showMessageDialog(this, "刪除好友成功!", "刪除好友",</p><p> JOptionPane.INFORMAT
110、ION_MESSAGE);</p><p> dispose();}}</p><p> catch (Exception ee) {JOptionPane.showMessageDialog(this, "你的分組或好友為空,無法刪除!", "刪除好友", JOptionPane.INFORMATION_MESSAGE);}}
111、}</p><p> 5.5 查詢用戶模塊</p><p> 主要功能是查詢當(dāng)前用戶外的所有用戶基本信息(包括是否在線),如圖5-9所示。</p><p> 圖5-9 查詢用戶界面</p><p><b> 主要實現(xiàn)代碼為:</b></p><p> public Vector<O
112、bject> Select() { //查詢用戶</p><p> ui=new UserItem(); </p><p> ui.setUsername(CommonData.currUser.getUsername());</p><p> Protocal proVerifyUser = new Protocal(ProtocalNumber
113、.SELECTUSER, CommonData.currUser.getUsername(),ui);</p><p> SendPacket sp = new SendPacket(proVerifyUser);</p><p> Vector<Object> vv= (Vector<Object>)sp.Send();</p><p>
114、; return vv;}</p><p> 5.6 即時通訊模塊</p><p> 主要功能是在線用戶之間的即時通訊,如圖5-10所示。</p><p> 圖5-10 即時通訊界面</p><p><b> 主要實現(xiàn)代碼為:</b></p><p> public void act
115、ionPerformed(ActionEvent e) { //即時通訊</p><p> if (e.getSource() == jbsend) {</p><p> try {if (jt2.getText().equals("")) {</p><p> JOptionPane.showMessageDialog(this, &
116、quot;發(fā)送內(nèi)容不能為空!", "JQQ聊天",</p><p> JOptionPane.INFORMATION_MESSAGE);</p><p><b> return;}</b></p><p> UserItem ui = new UserItem();</p><p&
117、gt; ui.setUsername(uiTarget.getUsername());</p><p> Protocal proFindUser = new Protocal(ProtocalNumber.FINDUSER, "",ui);</p><p> SendPacket sp = new SendPacket(proFindUser);</p&g
118、t;<p> uiTarget = (UserItem) sp.Send();</p><p> byte b[] = (CommonData.currUser.getUsername() + ":" + jt2.getText()).trim().getBytes();</p><p> InetAddress address = InetAddr
119、ess.getByName(uiTarget.getLoginIP());</p><p> DatagramPacket data_pack = new DatagramPacket(b, b.length,address, uiTarget.getBindport());</p><p> DatagramSocket mail_data = new DatagramSocket(
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 即時通訊畢業(yè)設(shè)計--企業(yè)內(nèi)部即時通訊系統(tǒng)的設(shè)計
- 即時通訊聊天系統(tǒng) 畢業(yè)設(shè)計
- 即時通訊工具畢業(yè)設(shè)計
- 即時通訊系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文
- 畢業(yè)論文即時通訊系統(tǒng)的設(shè)計與實現(xiàn)
- 網(wǎng)絡(luò)即時通訊系統(tǒng)的設(shè)計與實現(xiàn).pdf
- eYouIM即時通訊系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 畢業(yè)設(shè)計---基于bs模式即時通訊軟件的設(shè)計與實現(xiàn)
- 企業(yè)辦公即時通訊系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 即時通訊協(xié)議監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn).pdf
- [優(yōu)秀畢業(yè)設(shè)計精品] 基于.net的即時通訊系統(tǒng)
- 某單位即時通訊系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 本科畢業(yè)設(shè)計(論文)-企業(yè)即時通訊軟件的設(shè)計與實現(xiàn)
- 基于Android即時通訊系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于android系統(tǒng)的即時通訊系統(tǒng)設(shè)計與實現(xiàn).pdf
- 畢業(yè)設(shè)計--基于android平臺的即時通訊系統(tǒng)的研究與設(shè)計
- 博網(wǎng)即時通訊軟件的設(shè)計與實現(xiàn)
- 基于Android平臺即時通訊系統(tǒng)設(shè)計與實現(xiàn).pdf
- 財鑫集團即時通訊系統(tǒng)設(shè)計與實現(xiàn).pdf
- 基于AVS的即時通訊系統(tǒng)的設(shè)計與實現(xiàn).pdf
評論
0/150
提交評論