![基于TCPUDP協(xié)議的局域網(wǎng)即時(shí)通信工具的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/14/86aa391a-93f8-41d3-a07c-db3f83c5d308/86aa391a-93f8-41d3-a07c-db3f83c5d3081.gif)
![基于TCPUDP協(xié)議的局域網(wǎng)即時(shí)通信工具的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/14/86aa391a-93f8-41d3-a07c-db3f83c5d308/86aa391a-93f8-41d3-a07c-db3f83c5d3082.gif)
![基于TCPUDP協(xié)議的局域網(wǎng)即時(shí)通信工具的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/14/86aa391a-93f8-41d3-a07c-db3f83c5d308/86aa391a-93f8-41d3-a07c-db3f83c5d3083.gif)
![基于TCPUDP協(xié)議的局域網(wǎng)即時(shí)通信工具的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/14/86aa391a-93f8-41d3-a07c-db3f83c5d308/86aa391a-93f8-41d3-a07c-db3f83c5d3084.gif)
![基于TCPUDP協(xié)議的局域網(wǎng)即時(shí)通信工具的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/14/86aa391a-93f8-41d3-a07c-db3f83c5d308/86aa391a-93f8-41d3-a07c-db3f83c5d3085.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于TCP/UDP協(xié)議的局域網(wǎng)即時(shí)通信工具的設(shè)計(jì)與實(shí)現(xiàn)摘 要隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,各種各樣基于網(wǎng)絡(luò)的應(yīng)用也隨之誕生,比如基于互聯(lián)網(wǎng)的信息發(fā)布,通信,數(shù)據(jù)共享等等。局域網(wǎng)的發(fā)展也同樣迅速。很多政府機(jī)構(gòu),企業(yè),學(xué)校,都是先以一個(gè)統(tǒng)一的局域網(wǎng)聯(lián)結(jié)在一起,再分別接入INTERNET.因此基于局域網(wǎng)的即時(shí)通信工具,就這樣應(yīng)運(yùn)而生了。隨著信息技術(shù)的發(fā)展,即時(shí)通信(Instant Message)軟件應(yīng)運(yùn)而生,即時(shí)通信工具讓我們沖破了地域的界限,隨時(shí)隨地和各地的朋友溝通聯(lián)系,它們已經(jīng)成為新時(shí)代人們生活和工作中不可缺少的伙伴!即時(shí)通信(Instant Message),由于其具有實(shí)時(shí)性、跨平臺(tái)行、成本低、
2、效率高等優(yōu)點(diǎn)而受到廣泛的使用。設(shè)計(jì)并實(shí)現(xiàn)一個(gè)能夠處理多用戶進(jìn)行實(shí)時(shí)、安全的即時(shí)通信工具具有較強(qiáng)的現(xiàn)實(shí)意義。本文設(shè)計(jì)并實(shí)現(xiàn)了基于局域網(wǎng)的簡(jiǎn)單即時(shí)通信系統(tǒng),系統(tǒng)采用C/S模式,底層通信公告SOCKET套接字接口實(shí)現(xiàn),服務(wù)器負(fù)責(zé)客戶端的登錄驗(yàn)證,好友信息的保存和消息的發(fā)送。客戶端采用點(diǎn)對(duì)點(diǎn)方式實(shí)現(xiàn)消息傳遞,并能實(shí)現(xiàn)文件的傳輸。本系統(tǒng)基于JAVA,使用Eclipse等作為開(kāi)發(fā)工具完成即時(shí)通信系統(tǒng)的設(shè)計(jì)。關(guān)鍵詞:局域網(wǎng) 即時(shí)通信 文件傳輸 TCP協(xié)議 UDP協(xié)議 The Design and Implementation of Simple Instant Message Software Based
3、on TCP/UDP Protocol Abstract Along with the high-speed development of the computer network technology, various of applications based on network was born, like information releasing, data sharing . The development of the LAN is the same fast. Some governments, enterprises and schools constitute a LAN
4、 first ,then join into INTERNET. So the instant messenger in LAN was borned. With the development of information technology, instant messaging ( Instant Message ) emerge as the times require software, instant communication tools allow us to break geographical boundaries, whenever and wherever possib
5、le and friends from all over the communication link, which has become a new era of people living and working in an indispensable partner! Instant messages have several advantages such as real-time, cross-platform, cheap and efficient. To design a Multi-user IM (instant message) architecture is very
6、important in both theory and realism. The system uses the client/server(C/S) mode. The server takes the responsibility of the login message of client, the saving of friend message and Message heartbeat. The transmission of the basic messages of the customer end will be designed on P2P architecture.
7、The system is based on JAVA, using Eclipse as a development tool to complete the instant communication system design.Key words: Local area network; Instant Message; File Transfer; TCP protocol;UDP protocol目 錄摘 要1The Design and Implementation of Simple Instant Message Software Based on TCP/UDP Protoc
8、ol2第一章 緒論41.1 研究背景及研究意義41.2 即時(shí)通信的基本知識(shí)51.3 TCP與UDP的相關(guān)知識(shí)6第二章 相關(guān)工具及技術(shù)介紹72.1 系統(tǒng)開(kāi)發(fā)環(huán)境72.2 系統(tǒng)開(kāi)發(fā)所用工具82.2.1 Eclipse的簡(jiǎn)介及運(yùn)用82.2.2 Java的簡(jiǎn)介及運(yùn)用8第三章 系統(tǒng)需求分析與總體設(shè)計(jì)93.1 即時(shí)通信工具需求分析93.2 性能分析103.3 系統(tǒng)設(shè)計(jì)的目標(biāo)103.4 系統(tǒng)功能模塊設(shè)計(jì)11第四章 數(shù)據(jù)庫(kù)設(shè)計(jì)114.1 數(shù)據(jù)庫(kù)的基本概念114.2 概念結(jié)構(gòu)設(shè)計(jì)124.3 邏輯結(jié)構(gòu)設(shè)計(jì)144.4 物理結(jié)構(gòu)設(shè)計(jì)15第五章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)165.1 用戶管理165.1.1 新建用戶模塊165.
9、1.2 登錄模塊165.1.3 刪除好友模塊175.2 用戶登錄獲取信息模塊175.3 查找用戶模塊175.4 添加好友模塊185.5 建群模塊185.6 即時(shí)聊天模塊195.6.1 文件傳輸模塊195.6.2 語(yǔ)音聊天模塊19結(jié) 束 語(yǔ)20致 謝21參考文獻(xiàn)22第一章 緒論在網(wǎng)絡(luò)飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經(jīng)濟(jì)、生活等各方面發(fā)揮著重要的作用?;ヂ?lián)網(wǎng)上存在大量的信息,人與人之間的溝通、信息交換顯得尤為重要。人們一直在尋找一種方便、低廉的交流信息工具,因此網(wǎng)上聊天便成為人們的首先,而一個(gè)好的的即時(shí)通信工具是操作簡(jiǎn)單、方便,界面美觀大方、人性化、
10、節(jié)約系統(tǒng)資源。一個(gè)好的即時(shí)通信工具不僅僅是方便了人們的生活,同時(shí)也給企業(yè)帶來(lái)了商業(yè)利益,很多事情都可以通過(guò)進(jìn)行聊天而解決、通過(guò)服務(wù)器的消息傳輸讓用戶能夠很快的獲取信息,節(jié)約了時(shí)間也創(chuàng)造了更多的利益。1.1 研究背景及研究意義 隨著社會(huì)經(jīng)濟(jì)技術(shù)的發(fā)展,即時(shí)通信在全球的應(yīng)用越來(lái)越廣泛,從以前最開(kāi)始的簡(jiǎn)單通信到現(xiàn)在視頻聊天、查資料、看電視等功能的應(yīng)用,即時(shí)通信已經(jīng)成為人們生活當(dāng)中必不可少的一部分,即時(shí)通信不僅僅應(yīng)用到生活當(dāng)中,影響著人們的一切,而且現(xiàn)在也應(yīng)用到各個(gè)領(lǐng)域影響著整個(gè)世界。隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,即時(shí)通信正在成為在線活動(dòng)中不可或缺的業(yè)務(wù),即時(shí)通信軟件不僅僅只限于用戶間的聊天活動(dòng),運(yùn)營(yíng)商已經(jīng)開(kāi)始
11、利用即時(shí)通信平臺(tái)不斷地進(jìn)行業(yè)務(wù)的擴(kuò)張和整合,充分的運(yùn)用到整個(gè)企業(yè),整個(gè)社會(huì)當(dāng)中,而即時(shí)通信軟件的誕生也給企業(yè)的管理帶來(lái)了新的思路和手段,推動(dòng)了企業(yè)工作效率的提高,降低了辦公費(fèi)用,引起了工程應(yīng)用領(lǐng)域的研究熱潮。即時(shí)通信的實(shí)時(shí)交互、低廉資費(fèi)、方便快捷讓其成為繼電話、郵件等通訊工具之后的又一個(gè)充分融入現(xiàn)代企業(yè)溝通的互聯(lián)網(wǎng)工具。但是任何事務(wù)在發(fā)展的同時(shí)也必然會(huì)帶來(lái)各方面的問(wèn)題,比如最常見(jiàn)的安全問(wèn)題,即時(shí)通信的優(yōu)點(diǎn)就是能夠?qū)崟r(shí)交互,馬上能夠知道對(duì)方的一切,然而這樣也很容易照成安全隱患問(wèn)題,一旦沒(méi)有做好加密、防火墻工作,數(shù)據(jù)、資料等就很很容易遭到泄露,被惡意篡改、竊聽(tīng),從而導(dǎo)致對(duì)方收到的信息是錯(cuò)誤的,這樣
12、也會(huì)給工作、生活等方面帶來(lái)困難。 所以當(dāng)前,研究網(wǎng)絡(luò)即時(shí)通信系統(tǒng)是當(dāng)今網(wǎng)絡(luò)編程方面的一個(gè)熱門(mén)課題。即時(shí)通信正成為在線活動(dòng)中不可或缺的業(yè)務(wù)。小至個(gè)人、企業(yè)大至國(guó)家、世界,演化著即時(shí)通信的飛速變化,日益改變豐富著人們的生活。而在經(jīng)濟(jì)技術(shù)日益發(fā)展的情況下,對(duì)即時(shí)通信的需求也越來(lái)越迫切,所以在此前提下,就急需一種兩全其美的解決方案。 1.2 即時(shí)通信的基本知識(shí)隨著信息技術(shù)的發(fā)展,即時(shí)通信(IM)軟件應(yīng)運(yùn)而生,即時(shí)通信工具讓我們沖破了地域的界限,隨時(shí)隨地和各地的朋友溝通聯(lián)系,它們已經(jīng)成為新時(shí)代人們生活和工作中不可缺少的伙伴!即時(shí)通信(IM)是指能夠即時(shí)發(fā)送和接收互聯(lián)網(wǎng)消息等的業(yè)務(wù)。1998年即時(shí)通信的功
13、能日益豐富,逐漸集成了電子郵件、博客、音樂(lè)、電視、游戲和搜索等多種功能。即時(shí)通信不再是一個(gè)單純的聊天工具,它已經(jīng)發(fā)展成集交流、資訊、娛樂(lè)、搜索、電子商務(wù)、辦公協(xié)作和企業(yè)客戶服務(wù)等為一體的綜合化信息平臺(tái)。隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,互聯(lián)網(wǎng)即時(shí)通信也在向移動(dòng)化擴(kuò)張。目前,微軟、AOL、Yahoo等重要即時(shí)通信提供商都提供通過(guò)手機(jī)接入互聯(lián)網(wǎng)即時(shí)通信的業(yè)務(wù),用戶可以通過(guò)手機(jī)與其他已經(jīng)安裝了相應(yīng)客戶端軟件的手機(jī)或電腦收發(fā)消息。即時(shí)通信是一個(gè)基于局域網(wǎng)平臺(tái)而設(shè)計(jì)的系統(tǒng),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立、維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。前者要求建立起數(shù)據(jù)一致性、完整性、安全性高的庫(kù),后者則要求應(yīng)用程序功能完備,
14、能夠題供前臺(tái)順利運(yùn)行,易使用等特點(diǎn)。即時(shí)通信具有:管理員設(shè)置客戶端的單位組織結(jié)構(gòu)信息;客戶端不需自行添加聯(lián)系人;聯(lián)系人之間能夠發(fā)送消息;聯(lián)系人之間能夠互相傳送文件;管理員能夠建立現(xiàn)了人分組,加入分組后的聯(lián)系人允許互相通信;分組成員之間可以群發(fā)消息等功能。1.3 TCP與UDP的相關(guān)知識(shí)Java網(wǎng)絡(luò)編程中有兩種不同的通訊協(xié)議,分別是TCP(面向連接)與UDP(面向無(wú)連接),兩種協(xié)議各有優(yōu)缺點(diǎn)。TCP:是Tranfer Control Protocol的簡(jiǎn)稱(chēng),是一種面向連接的保證可靠傳輸?shù)膮f(xié)議。通過(guò)TCP協(xié)議傳輸,得到的是一個(gè)順序的無(wú)差錯(cuò)的數(shù)據(jù)流。發(fā)送方和接收方的成對(duì)的兩個(gè)socket之間必須建立
15、連接,以便在TCP協(xié)議的基礎(chǔ)上進(jìn)行通信,當(dāng)一個(gè)socket(通常都是server socket)等待建立連接時(shí),另一個(gè)socket可以要求進(jìn)行連接,一旦這兩個(gè)socket連接起來(lái),它們就可以進(jìn)行雙向數(shù)據(jù)傳輸,雙方都可以進(jìn)行發(fā)送或接收操作。 UDP:是User Datagram Protocol的簡(jiǎn)稱(chēng),是一種無(wú)連接的協(xié)議,每個(gè)數(shù)據(jù)報(bào)都是一個(gè)獨(dú)立的信息,包括完整的源地址或目的地址,它在網(wǎng)絡(luò)上以任何可能的路徑傳往目的地,因此能否到達(dá)目的地,到達(dá)目的地的時(shí)間以及內(nèi)容的正確性都是不能被保證的。其中TCP提供IP環(huán)境下的數(shù)據(jù)可靠傳輸,它提供的服務(wù)包括數(shù)據(jù)流傳送、可靠性、有效流控、全雙工操作和多路復(fù)用。通過(guò)
16、面向連接、端到端和可靠的數(shù)據(jù)包發(fā)送。通俗說(shuō),它是事先為所發(fā)送的數(shù)據(jù)開(kāi)辟出連接好的通道,然后再進(jìn)行數(shù)據(jù)發(fā)送;而UDP則不為IP提供可靠性、流控或差錯(cuò)恢復(fù)功能。一般來(lái)說(shuō),TCP對(duì)應(yīng)的是可靠性要求高的應(yīng)用,而UDP對(duì)應(yīng)的則是可靠性要求低、傳輸經(jīng)濟(jì)的應(yīng)用。TCP支持的應(yīng)用協(xié)議主要有:Telnet、FTP、SMTP等;UDP支持的應(yīng)用層協(xié)議主要有:NFS(網(wǎng)絡(luò)文件系統(tǒng))、SNMP(簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議)、DNS(主域名稱(chēng)系統(tǒng))、TFTP(通用文件傳輸協(xié)議)等。第二章 相關(guān)工具及技術(shù)介紹2.1 系統(tǒng)開(kāi)發(fā)環(huán)境由于日趨發(fā)展的信息技術(shù),對(duì)通信工具的要求也逐漸提高,而快速的成長(zhǎng)當(dāng)中帶來(lái)的影響也是深遠(yuǎn)的,那么如何在這樣
17、的環(huán)境下設(shè)計(jì)一個(gè)安全系數(shù)高、方便快捷的通信工具呢,這就是本系統(tǒng)所要解決的問(wèn)題。實(shí)現(xiàn)局域網(wǎng)用戶之間的即時(shí)交流與文件傳輸,建立網(wǎng)絡(luò)即時(shí)通信安全機(jī)制,保證信息傳送的及時(shí)性和安全性。本系統(tǒng)采用基于java平臺(tái)的Eclipse工具來(lái)設(shè)計(jì)并實(shí)現(xiàn)這一通信工具的設(shè)計(jì)與實(shí)現(xiàn)。2.2 系統(tǒng)開(kāi)發(fā)所用工具2.2.1 Eclipse的簡(jiǎn)介及運(yùn)用Eclipse是一種基于 Java 的可擴(kuò)展開(kāi)源開(kāi)發(fā)平臺(tái)。就其自身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境。幸運(yùn)的是,Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括為人熟知的 Java 開(kāi)發(fā)工具(Java Development Tools,JDT)。雖然大多數(shù)
18、用戶很樂(lè)于將 Eclipse 當(dāng)作 Java 集成開(kāi)發(fā)環(huán)境(IDE)來(lái)使用,但Eclipse的目標(biāo)卻不僅限于此。Eclipse還包括插件開(kāi)發(fā)環(huán)境(Plug-in Development Environment,PDE),這個(gè)組件主要針對(duì)希望擴(kuò)展 Eclipse 的軟件開(kāi)發(fā)人員,因?yàn)樗试S他們構(gòu)建與 Eclipse 環(huán)境無(wú)縫集成的工具。由于 Eclipse 中的每樣?xùn)|西都是插件,對(duì)于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開(kāi)發(fā)環(huán)境而言,所有工具開(kāi)發(fā)人員都具有同等的發(fā)揮場(chǎng)所。這種平等和一致性并不僅限于 Java 開(kāi)發(fā)工具。盡管 Eclipse 是使用 Java 語(yǔ)言開(kāi)發(fā)的,但它
19、的用途并不限于 Java 語(yǔ)言;例如,支持諸如 C/C+ 和 COBOL 等編程語(yǔ)言的插件已經(jīng)可用,或預(yù)計(jì)將會(huì)推出。Eclipse 框架還可用來(lái)作為與軟件開(kāi)發(fā)無(wú)關(guān)的其他應(yīng)用程序類(lèi)型的基礎(chǔ),比如內(nèi)容管理系統(tǒng)。更舒服的是,利用Eclipse中的MyEclipse插件來(lái)搭建一個(gè)動(dòng)態(tài)JSP程序,快速,簡(jiǎn)單、方便。2.2.2 Java的簡(jiǎn)介及運(yùn)用技術(shù)上采用sun公司的java語(yǔ)言,該語(yǔ)言有很多有點(diǎn),比如多線程、網(wǎng)絡(luò)流概念、異常捕獲處理、安全性以及速度與性能等方面,并且具有可以一次編寫(xiě)、到處運(yùn)行的跨平臺(tái)優(yōu)點(diǎn)。多線程:多線程是這樣一種機(jī)制,它允許在程序中并發(fā)執(zhí)行多個(gè)指令流,每個(gè)指令流都稱(chēng)為一個(gè)線程,彼此間互
20、相獨(dú)立,線程又稱(chēng)為輕量級(jí)進(jìn)程,多線程技術(shù)允許你在一個(gè)應(yīng)用程序中啟動(dòng)多個(gè)執(zhí)行輕量程序,使多段程序同時(shí)競(jìng)爭(zhēng)CPU資源,從而提高系統(tǒng)效率。而對(duì)于網(wǎng)絡(luò)通訊工具來(lái)說(shuō),多線程的特性是必須的,不僅是為了效率,而且可以實(shí)現(xiàn)同時(shí)處理多個(gè)請(qǐng)求。網(wǎng)絡(luò)流:java中的網(wǎng)絡(luò)通訊以及文件的讀取都是以一種流的概念來(lái)理解的,這樣,網(wǎng)絡(luò)上數(shù)據(jù)的傳輸其實(shí)就等同于看成一臺(tái)機(jī)器上文件的讀取,有利于理解與編寫(xiě)運(yùn)用程序,java類(lèi)庫(kù)中提供了豐富的IO流類(lèi)資源以及網(wǎng)絡(luò)編程類(lèi)資源,軟件開(kāi)發(fā)人員可以很方便的編寫(xiě)網(wǎng)絡(luò)應(yīng)用程序。例外處理:Java通過(guò)面向?qū)ο蟮姆椒▉?lái)處理例外。在一個(gè)方法的運(yùn)行過(guò)程中,如果發(fā)生了例外,則這個(gè)方法生成代表該例外的一個(gè)對(duì)
21、象,并把它交給運(yùn)行時(shí)系統(tǒng),運(yùn)行時(shí)系統(tǒng)尋找相應(yīng)的代碼來(lái)處理這一例外。我們把生成例外對(duì)象并把它提交給運(yùn)行時(shí)系統(tǒng)的過(guò)程稱(chēng)為拋棄(throw)一個(gè)例外。運(yùn)行時(shí)系統(tǒng)在方法的調(diào)用棧中查找,從生成例外的方法開(kāi)始進(jìn)行回朔,直到找到包含相應(yīng)例外處理的方法為止,這一個(gè)過(guò)程稱(chēng)為捕獲(catch)一個(gè)例外。所以,java的例外處理使非常方便的??缙脚_(tái):Java語(yǔ)言的一個(gè)非常重要的特點(diǎn)就是與平臺(tái)的無(wú)關(guān)性。而使用Java虛擬機(jī)是實(shí)現(xiàn)這一特點(diǎn)的關(guān)鍵。一般的高級(jí)語(yǔ)言如果要在不同的平臺(tái)上運(yùn)行,至少需要編譯成不同的目標(biāo)代碼。而引入Java語(yǔ)言虛擬機(jī)后,Java語(yǔ)言在不同平臺(tái)上運(yùn)行時(shí)不需要重新編譯。Java語(yǔ)言使用模式Java虛擬
22、機(jī)屏蔽了與具體平臺(tái)相關(guān)的信息,使得Java語(yǔ)言編譯程序只需生成在Java虛擬機(jī)上運(yùn)行的目標(biāo)代碼(字節(jié)碼),就可以在多種平臺(tái)上不加修改地運(yùn)行。Java虛擬機(jī)在執(zhí)行字節(jié)碼時(shí),把字節(jié)碼解釋成具體平臺(tái)上的機(jī)器指令執(zhí)行。第三章 系統(tǒng)需求分析與總體設(shè)計(jì)3.1 即時(shí)通信工具需求分析伴隨著當(dāng)今互聯(lián)網(wǎng)的迅速發(fā)展,人們之間的信息交互的實(shí)時(shí)性能變得越來(lái)越重要,傳統(tǒng)的電子郵件交互已經(jīng)不能夠滿足人們的即時(shí)通訊要求,鑒于此種情況打算開(kāi)發(fā)出一款類(lèi)似于騰訊QQ的即時(shí)通訊軟件,只要經(jīng)過(guò)注冊(cè)你便可以獲取一個(gè)帳號(hào),通過(guò)該帳號(hào)你可以在客戶端登陸,成功登錄后便可以在互聯(lián)網(wǎng)上與你的親朋好友進(jìn)行暢談,由于技術(shù)和時(shí)間問(wèn)題,該軟件主要提供私聊
23、、群聊、好友管理、群管理等常用功能,其它一些功能比如文件傳輸、語(yǔ)音聊天和視頻聊天等功能,由于技術(shù)問(wèn)題暫時(shí)沒(méi)有實(shí)現(xiàn),可以在該系統(tǒng)的基礎(chǔ)上實(shí)現(xiàn)這些功能,也可以在此基礎(chǔ)上進(jìn)行更多功能的擴(kuò)展。3.2 性能分析作為一個(gè)簡(jiǎn)單安全的溝通通信平臺(tái),安全及時(shí)通信系統(tǒng)需要保證數(shù)據(jù)通信的即時(shí)性以及通信過(guò)程和信息存儲(chǔ)的安全性,為使用者提供信息安全保證,同時(shí)減少系統(tǒng)資源的消耗,保證系統(tǒng)運(yùn)行的速率。 1.數(shù)據(jù)通信完整和可靠性:即時(shí)通信亦即用戶間能實(shí)時(shí)發(fā)送和接收各種信息,包括文本通信和文件傳輸,其中保證數(shù)據(jù)的可到達(dá)性,保證數(shù)據(jù)解讀的正確性,防止數(shù)據(jù)丟失和數(shù)據(jù)錯(cuò)位,從而保證消息傳達(dá)的可靠性。 2.通信安全性:通信安全是指保證
24、客戶之間傳送消息和文件的安全,防止數(shù)據(jù)在傳輸過(guò)程中遭泄密、竊密或被篡改數(shù)據(jù)。 3.通信效率和公平性:這主要體現(xiàn)在服務(wù)器端。服務(wù)器需要同時(shí)處理所有用戶發(fā)送的各類(lèi)信息,并且需要完成數(shù)據(jù)庫(kù)存儲(chǔ)、讀取、更新等操作。需要采用適當(dāng)?shù)姆椒ㄌ岣叻?wù)器接受、解讀、處理和發(fā)送數(shù)據(jù)的效率,在指定時(shí)間呃逆完成需要的通信量,提高系統(tǒng)的即時(shí)通信性能,通信保證數(shù)據(jù)處理的公平性,保證各客服端的信息能夠被及時(shí)響應(yīng)和處理。 4.系統(tǒng)可控性:系統(tǒng)可控性是指系統(tǒng)運(yùn)行期間完成數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)庫(kù)備份、系統(tǒng)故障恢復(fù)等任務(wù)的性能,包括用戶注冊(cè)管理、登陸管理、客戶端運(yùn)行過(guò)程中監(jiān)控等模塊的設(shè)計(jì)。防止重要數(shù)據(jù)的丟失或被篡改,提高系統(tǒng)的運(yùn)行可靠性,增
25、強(qiáng)系統(tǒng)使用者的信心。 5.系統(tǒng)穩(wěn)定性能:系統(tǒng)穩(wěn)定性包括系統(tǒng)在高通信強(qiáng)度下是否能夠正常、及時(shí)低處理各客服端的請(qǐng)求和信息,系統(tǒng)在長(zhǎng)時(shí)間工作狀態(tài)下是否會(huì)出現(xiàn)異常以及系統(tǒng)容錯(cuò)性能等。防止系統(tǒng)崩潰和程序退出,同時(shí)降低程序運(yùn)行中CPU等資源的消耗。3.3 系統(tǒng)設(shè)計(jì)的目標(biāo) 本課題目標(biāo)是實(shí)現(xiàn)局域網(wǎng)用戶之間的即時(shí)交流與文件傳輸?shù)龋ㄟ^(guò)基礎(chǔ)的網(wǎng)絡(luò)SOCKET編程,為局域網(wǎng)內(nèi)部的即時(shí)通信提供一個(gè)簡(jiǎn)單而較安全的解決方案。3.4 系統(tǒng)功能模塊設(shè)計(jì)該系統(tǒng)主要包括三層,客戶端,服務(wù)器端,以及數(shù)據(jù)庫(kù)服務(wù)器,客戶端用來(lái)提供用戶的登錄,服務(wù)器端用來(lái)對(duì)登錄的用戶進(jìn)行管理以及用來(lái)處理信息之間的轉(zhuǎn)發(fā),數(shù)據(jù)庫(kù)服務(wù)器主要存放一些重要的信息
26、。它們之間的關(guān)系如下圖所示:客戶端服務(wù)器數(shù)據(jù)庫(kù)服務(wù)器根據(jù)上述需求的描述,對(duì)該系統(tǒng)按照功能進(jìn)行了模塊的細(xì)化,主要包括注冊(cè)登錄、好友聊天、好友組管理、群聊天4個(gè)模塊,還有很多其它小模塊,這4個(gè)模塊是實(shí)現(xiàn)該系統(tǒng)的核心模塊,模塊之間的耦合程度非常低,其中注冊(cè)模塊是通過(guò)B/S結(jié)構(gòu)來(lái)實(shí)現(xiàn),不需要安裝客戶端。下圖是上述的4個(gè)重要模塊的用例交互圖。第四章 數(shù)據(jù)庫(kù)設(shè)計(jì)4.1 數(shù)據(jù)庫(kù)的基本概念數(shù)據(jù)庫(kù)技術(shù)是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)技術(shù)中發(fā)展最快的領(lǐng)域之一,也是應(yīng)用最廣的技術(shù)之一。它已成為各行各業(yè)存儲(chǔ)數(shù)據(jù)、管理信息、共享資源的最先進(jìn)最常用的技術(shù)。數(shù)據(jù)庫(kù),簡(jiǎn)單地說(shuō)就是數(shù)據(jù)的倉(cāng)庫(kù),即數(shù)據(jù)存放的地方。數(shù)據(jù)庫(kù)系統(tǒng)(d
27、atabase systems),是由數(shù)據(jù)庫(kù)及其管理軟件組成的系統(tǒng)。它是為適應(yīng)數(shù)據(jù)處理的需要而發(fā)展起來(lái)的一種較為理想的數(shù)據(jù)處理的核心機(jī)構(gòu)。它是一個(gè)實(shí)際可運(yùn)行的存儲(chǔ)、維護(hù)和應(yīng)用系統(tǒng)提供數(shù)據(jù)的軟件系統(tǒng),是存儲(chǔ)介質(zhì)、處理對(duì)象和管理系統(tǒng)的集合體。數(shù)據(jù)庫(kù)系統(tǒng)DBS(Data Base System,簡(jiǎn)稱(chēng)DBS)是一個(gè)實(shí)際可運(yùn)行的存儲(chǔ)、維護(hù)和應(yīng)用系統(tǒng)提供數(shù)據(jù)的軟件系統(tǒng),是存儲(chǔ)介質(zhì)、處理對(duì)象和管理系統(tǒng)的集合體。它通常由軟件、數(shù)據(jù)庫(kù)和數(shù)據(jù)管理員組成。其軟件主要包括操作系統(tǒng)、各種宿主語(yǔ)言、實(shí)用程序以及數(shù)據(jù)庫(kù)管理系統(tǒng)。數(shù)據(jù)庫(kù)由數(shù)據(jù)庫(kù)管理系統(tǒng)統(tǒng)一管理,數(shù)據(jù)的插入、修改和檢索均要通過(guò)數(shù)據(jù)庫(kù)管理系統(tǒng)進(jìn)行。數(shù)據(jù)管理員負(fù)責(zé)
28、創(chuàng)建、監(jiān)控和維護(hù)整個(gè)數(shù)據(jù)庫(kù),使數(shù)據(jù)能被任何有權(quán)使用的人有效使用。4.2 概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì)就是對(duì)信息世界進(jìn)行建模,常用的概念模型是E-R模型,它是P.P.S.Chen于1976年提出來(lái)的。概念結(jié)構(gòu)設(shè)計(jì)的任務(wù)是在需求分析階段產(chǎn)生的需求說(shuō)明書(shū)的基礎(chǔ)上,按照特定的方法把它們抽象為一個(gè)不依賴(lài)于任何具體機(jī)器的數(shù)據(jù)模型,即概念模型。概念模型使設(shè)計(jì)者的注意力能夠從復(fù)雜的實(shí)現(xiàn)細(xì)節(jié)中解脫出來(lái),而只集中在最重要的信息的組織結(jié)構(gòu)和處理模式上。而這樣做有三個(gè)好處:(1)從邏輯設(shè)計(jì)中分離出概念設(shè)計(jì)以后,各階段的任務(wù)相對(duì)單一化,設(shè)計(jì)復(fù)雜程度大大降低,便于組織管理。(2)概念模型不受特定的DBMS的限制,也獨(dú)立于存儲(chǔ)
29、安排和效率方面的考慮,因而比邏輯模型更為穩(wěn)定。(3)概念模型不含具體的DBMS所附加的技術(shù)細(xì)節(jié),更容易為用戶所理解,因而更有可能準(zhǔn)確反映用戶的信息需求。概念模型在數(shù)據(jù)庫(kù)的各級(jí)模型中的地位如圖所示:應(yīng)用1 應(yīng)用1 應(yīng)用2 應(yīng)用3外模式3外模式2應(yīng)用要求外模式1 映像概念模 式應(yīng)用2 應(yīng)用要求 概念模式 映像應(yīng)用3 轉(zhuǎn)換物理模式綜合應(yīng)用要求 (a) (b) 概念結(jié)構(gòu)設(shè)計(jì)的特點(diǎn)(1)能真實(shí)、充分地反映現(xiàn)實(shí)世界,包括事物和事物之間的聯(lián)系,能滿足用戶對(duì)數(shù)據(jù)的處理要求。是對(duì)現(xiàn)實(shí)世界的一個(gè)真實(shí)模型。(2)易于理解,從而可以用它和不熟悉計(jì)算機(jī)的用戶交換意見(jiàn),用戶的積極參與是數(shù)據(jù)庫(kù)的設(shè)計(jì)成功的關(guān)鍵。(3)易于更
30、改,當(dāng)應(yīng)用環(huán)境和應(yīng)用要求改變時(shí),容易對(duì)概念模型修改和擴(kuò)充。(4)易于向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。概念結(jié)構(gòu)設(shè)計(jì)的方法:設(shè)計(jì)概念結(jié)構(gòu)的E-R模型可采用以下四種方法(1)自頂向下:首先定義全局概念結(jié)構(gòu)的框架,然后逐步細(xì)化(2)自底向上:首先定義各局部應(yīng)用的概念結(jié)構(gòu),然后將它們集成起來(lái),得到全局概念結(jié)構(gòu)(3)逐步擴(kuò)張:首先定義最重要的核心概念結(jié)構(gòu),然后向外擴(kuò)充,以滾雪球的方式逐步生成其他概念結(jié)構(gòu),直至總體概念結(jié)構(gòu)(4)混合策略:將自頂向下和自底向上相結(jié)合,用自頂向下策略設(shè)計(jì)一個(gè)全局概念結(jié)構(gòu)的框架,以它為骨架集成由自底向上策略中設(shè)計(jì)的各局部概念結(jié)構(gòu)。概念結(jié)構(gòu)設(shè)計(jì)的步驟:以自底向上設(shè)計(jì)方法為例進(jìn)
31、行數(shù)據(jù)抽象,設(shè)計(jì)局部E-R模型,即設(shè)計(jì)用戶試圖。集成格局部E-R模型,形成全局E-R模型,即視圖集成。以局部E-R模型設(shè)計(jì)為例:數(shù)據(jù)抽象后得到了實(shí)體和屬性,實(shí)際上實(shí)體和屬性是相對(duì)而言的,往往要根據(jù)實(shí)際情況進(jìn)行必要的調(diào)整。在調(diào)整中要遵循以下兩條原則。實(shí)體具有描述信息,而屬性沒(méi)有。即屬性必須是不可分的數(shù)據(jù)項(xiàng),不能再由另一些屬性組成。屬性不能與其他實(shí)體具有聯(lián)系,聯(lián)系只能發(fā)生在實(shí)體之間。而根據(jù)本課題來(lái)看,通信工具的設(shè)計(jì)則在概念結(jié)構(gòu)設(shè)計(jì)中能夠體現(xiàn)出來(lái),用戶是一個(gè)實(shí)體,賬號(hào)、昵稱(chēng)、性別、年齡、等級(jí)等是用戶實(shí)體的屬性。這時(shí),等級(jí)只表示用戶屬于那個(gè)級(jí)別,不涉及具體情況,換句話說(shuō),沒(méi)有需要進(jìn)一步描述的特性,即是
32、不可分的數(shù)據(jù)項(xiàng),則根據(jù)原則1可以作為用戶實(shí)體的屬性。用 戶 賬號(hào) 等級(jí)年齡昵稱(chēng)性別 屬于 等級(jí)學(xué) 生 好友人數(shù)級(jí)別年齡性別昵稱(chēng)賬號(hào) 4.3 邏輯結(jié)構(gòu)設(shè)計(jì)1. 概念結(jié)構(gòu)設(shè)計(jì)階段得到的E-R模型是用戶的模型,它獨(dú)立于任何一種數(shù)據(jù)模型,獨(dú)立于任何一個(gè)具體的DBMS。設(shè)計(jì)邏輯結(jié)構(gòu)應(yīng)該選擇最適于描述與表達(dá)相應(yīng)概念結(jié)構(gòu)的數(shù)據(jù)模型,然后選擇最合適的DBMS。設(shè)計(jì)邏輯結(jié)構(gòu)時(shí)一般要分三步進(jìn)行: 將概念結(jié)構(gòu)轉(zhuǎn)換為一般的關(guān)系、網(wǎng)狀、層次模型,并將轉(zhuǎn)化來(lái)的關(guān)系、網(wǎng)狀、層次模型向特定DBMS支持下的數(shù)據(jù)模型轉(zhuǎn)換 對(duì)數(shù)據(jù)模型進(jìn)行優(yōu)化一般的邏輯結(jié)構(gòu)設(shè)計(jì)分為以下三步:1.初始關(guān)系模式設(shè)計(jì);2.關(guān)系模式規(guī)范化;3.模式的評(píng)價(jià)與
33、改進(jìn)。2. 設(shè)計(jì)外模式: 前面我們根據(jù)用戶需求設(shè)計(jì)了局部應(yīng)用視圖,這種局部應(yīng)用視圖只是概念模型,用E-R圖表示。在我們將概念模型轉(zhuǎn)換為邏輯模型后,即生成了整個(gè)應(yīng)用系統(tǒng)的模式后,還應(yīng)該根據(jù)局部應(yīng)用需求,結(jié)合具體DBMS的特點(diǎn),設(shè)計(jì)用戶的外模式。目前關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)一般都提供了視圖概念,支持用戶的虛擬視圖。我們可以利用這一功能設(shè)計(jì)更符合局部用戶需要的用戶外模式。定義數(shù)據(jù)庫(kù)模式主要是從系統(tǒng)的時(shí)間效率、空間效率、易維護(hù)等角度出發(fā)。由于用戶外模式與模式是獨(dú)立的,因此我們?cè)诙x用戶外模式時(shí)應(yīng)該更注重考慮用戶的習(xí)慣與方便。包括:使用更符合用戶習(xí)慣的別名針對(duì)不同級(jí)別的用戶定義不同的外模式,以滿足系統(tǒng)對(duì)安全性
34、的要求簡(jiǎn)化用戶對(duì)系統(tǒng)的使用4.4 物理結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)最終要存儲(chǔ)在物理設(shè)備上。對(duì)于給定的邏輯數(shù)據(jù)模型,選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)的過(guò)程,稱(chēng)為數(shù)據(jù)庫(kù)物理結(jié)構(gòu)設(shè)計(jì)。物理結(jié)構(gòu)設(shè)計(jì)的任務(wù)是為了有效地實(shí)現(xiàn)邏輯模式,確定所采取的存儲(chǔ)策略。此階段是以邏輯設(shè)計(jì)的結(jié)構(gòu)作為輸入,結(jié)合具體DBMS的特點(diǎn)與存儲(chǔ)設(shè)備特性進(jìn)行設(shè)計(jì),選定數(shù)據(jù)庫(kù)在物理設(shè)備上的存儲(chǔ)結(jié)構(gòu)和存取方法。數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)設(shè)計(jì)可分為兩步:1.確定物理結(jié)構(gòu)。2.評(píng)價(jià)物理結(jié)構(gòu),評(píng)價(jià)的重點(diǎn)是時(shí)間和空間效率。1.確定物理結(jié)構(gòu)(1)確定數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)(2)設(shè)計(jì)數(shù)據(jù)庫(kù)的存取路徑(3)確定數(shù)據(jù)的存放位置(4)確定系統(tǒng)配置2.評(píng)價(jià)物理結(jié)構(gòu)和前面幾個(gè)設(shè)計(jì)階段一樣,
35、在確定了數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)之后,要進(jìn)行評(píng)價(jià),評(píng)價(jià)重點(diǎn)是時(shí)間和空間的效率,如果評(píng)價(jià)結(jié)果滿足設(shè)計(jì)要求,則可進(jìn)行數(shù)據(jù)庫(kù)實(shí)施。實(shí)際上,往往需要經(jīng)過(guò)反復(fù)測(cè)試才能優(yōu)化數(shù)據(jù)庫(kù)物理結(jié)構(gòu)。第五章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)5.1 用戶管理5.1.1 新建用戶模塊注冊(cè)模塊是整個(gè)系統(tǒng)最基礎(chǔ)的模塊,當(dāng)服務(wù)器收到用戶的注冊(cè)請(qǐng)求,便開(kāi)始接受客戶傳遞的消息,諸如客戶的昵稱(chēng)、性別、籍貫、頭像、個(gè)人資料等。便通過(guò)與后臺(tái)數(shù)據(jù)庫(kù)連接,然后向數(shù)據(jù)庫(kù)添加記錄,如果成功,便向客戶返回起申請(qǐng)?zhí)柎a,客戶收到服務(wù)器返回的信息后,便打開(kāi)主程序窗口。程序流程圖:客戶端主界面信息處理服務(wù)器 端填寫(xiě)信息注冊(cè)頁(yè)面點(diǎn)擊注 冊(cè)客戶端登錄 框 通過(guò)此模塊可以實(shí)現(xiàn)密碼的
36、找回、密碼的修改以及個(gè)人信息的查詢。5.1.2 登錄模塊該模塊主要給注冊(cè)成功的用戶提供一個(gè)登錄界面,用戶根據(jù)自己注冊(cè)的帳號(hào)信息可以與服務(wù)器交互,如果提供的信息通過(guò)服務(wù)器的驗(yàn)證便可以成功的登錄系統(tǒng),成功登錄系統(tǒng)之后,可以進(jìn)行一些操作,比如和好友聊天等,使用該模塊之前必須安裝一個(gè)客戶端。登錄模塊只是一個(gè)簡(jiǎn)單的頁(yè)面,主要填寫(xiě)用戶名、密碼之類(lèi)的信息,登錄成功后的主界面包含了系統(tǒng)的大部分功能,比如添加和刪除好友、添加和刪除好友分組、和朋友聊天等功能。下圖是登錄模塊的用例圖:客戶端主界面或者提示錯(cuò)誤并進(jìn)入登陸界面客戶端服務(wù)器對(duì)客戶信息處理結(jié)果服務(wù)器端填寫(xiě)信息發(fā)送到服務(wù)器客戶端 5.1.3 刪除好友模塊登陸
37、系統(tǒng)界面過(guò)后,在主界面上則會(huì)顯示用戶分組情況以及好友的基本信息,如昵稱(chēng)、個(gè)性簽名等,如果在用戶的界面上出現(xiàn)了陌生人的信息,用戶可以選擇直接拉入黑名單,也可以選擇直接刪除。通過(guò)服務(wù)器的認(rèn)證對(duì)此請(qǐng)求作出處理,若服務(wù)器通過(guò)則可以刪除好友。下圖是刪除好友模塊視圖:客戶端已刪除好友通過(guò)認(rèn)證批準(zhǔn)服務(wù)器對(duì)客戶的請(qǐng)求作出處理服務(wù)器請(qǐng)求刪除信息發(fā)送到服務(wù)器客戶端 5.2 用戶登錄獲取信息模塊用戶登錄系統(tǒng),進(jìn)入主界面之后,除了在主界面上顯示的信息外,還可以獲取其他信息,可以通過(guò)在線搜索或者查找等功能獲取用戶想要的信息,此功能模塊能夠通過(guò)客戶端到服務(wù)器的響應(yīng),快速便捷的查詢到想要的信息,便于用戶能夠更好的運(yùn)用該系統(tǒng)
38、。下面是功能模塊視圖:客戶端服務(wù)器反應(yīng)顯示基本信息系統(tǒng)主界面客戶端 查找 返回 5.3 查找用戶模塊客戶登錄后,按查找按鈕后,開(kāi)始向服務(wù)器發(fā)出查找請(qǐng)求,服務(wù)器讀取數(shù)據(jù)庫(kù)表中的請(qǐng)求信息并向客戶返回其結(jié)果,客戶收到后在查找窗口中顯示,如果用戶選擇了一個(gè)好友,就向服務(wù)器發(fā)送添加好友請(qǐng)求,服務(wù)器收到后就向數(shù)據(jù)庫(kù)表中添加好友的號(hào)碼,并從表中讀取其基本信息返回給客服端,然后客戶收到并在主窗口顯示該好友。并通過(guò)UDP通知該客戶,對(duì)方收到該消息后,可以選擇添加該用戶為好友或者不。下面是流程視圖:服務(wù)器處理該信息客戶端通過(guò)UDP來(lái)添加好友并將資料送至數(shù)據(jù)庫(kù)客戶端客戶端查找結(jié)果頁(yè)面服務(wù)器處理請(qǐng)求的結(jié)果發(fā)送到客戶端
39、服務(wù)器端查找請(qǐng)求發(fā)送到服務(wù)器 5.4 添加好友模塊在客戶向服務(wù)器發(fā)送請(qǐng)求添加好友信息后,如果找到就返回用戶服務(wù)信息,打開(kāi)一個(gè)用戶信息顯示界面,該界面會(huì)提供一個(gè)“添加為好友”按鈕,可以進(jìn)行好友添加,則查找到好友的基本信息,如賬號(hào)和昵稱(chēng)。如果是你所要添加的好友則點(diǎn)擊添加,如不是則添加失敗??蛻舳丝蛻魟t選擇添加或不添加返回允許結(jié)果給客服端服務(wù)器端認(rèn)證基本信息服務(wù)器端客戶端請(qǐng)求添加好友發(fā)送到服務(wù)器5.5 建群模塊根據(jù)用戶的需要,在本系統(tǒng)中可以實(shí)現(xiàn)建群功能,用戶注冊(cè)以后群個(gè)數(shù)為0。用戶在執(zhí)行添加群操作以后,客戶端分別將一個(gè)這個(gè)動(dòng)作的信息發(fā)送給服務(wù)器。服務(wù)器端的表接受到這個(gè)請(qǐng)求,會(huì)進(jìn)行數(shù)據(jù)庫(kù)操作,將要添加
40、的群消息插入到數(shù)據(jù)庫(kù)中。如果成功,則返回這個(gè)群的消息給客服端,否則返回錯(cuò)誤提示消息。以下是流程視圖:客戶端則可以建群認(rèn)證成功返回給服務(wù)器通過(guò)數(shù)據(jù)庫(kù)服務(wù)器接受客戶端請(qǐng)求建群信息發(fā)送到服務(wù)器 5.6 即時(shí)聊天模塊5.6.1 文件傳輸模塊文件傳輸模塊的功能主要有:(1)共享文件;(2)查看并下載文件。(1)在啟動(dòng)文件傳輸服務(wù)器的共享文件功能之前,要設(shè)置它的IP號(hào)和端口,如果設(shè)置不好,好友將無(wú)法看到這些共享的文件,還有一個(gè)重要的步驟就是添加共享文件或目錄,最后啟動(dòng)文件共享。(2)使用文件傳輸?shù)目头艘_配置好服務(wù)器的IP和端口號(hào),以及下載好的文件的存放目錄。如果其中之一配置不好,文件下載將會(huì)失敗。設(shè)
41、置好后,點(diǎn)擊“連接”按鈕,如果配置正確,這時(shí)將會(huì)看到服務(wù)器共享的文件。目前不能支持文件下載,當(dāng)看到一個(gè)文件夾以后,可以雙擊該文件夾并查看文件夾里面的文件。下列視圖說(shuō)明:客戶端向服務(wù)器發(fā)送文件傳輸請(qǐng)求,如果服務(wù)器端同意傳輸,就讀取文件流并將數(shù)據(jù)流寫(xiě)到客戶端??蛻舳俗x取到文件名之后,立即點(diǎn)擊打開(kāi),則文件就會(huì)自動(dòng)傳輸給對(duì)方。客戶端接收文件讀取文件流發(fā)送到客戶端查找文件創(chuàng)建服務(wù)器監(jiān)聽(tīng)線程服務(wù)器端打開(kāi)要傳輸?shù)奈募蛻舳?第五章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)5.6.2 語(yǔ)音聊天模塊當(dāng)客戶發(fā)送請(qǐng)求語(yǔ)音聊天給好友時(shí),客戶端正在接收請(qǐng)求并將此請(qǐng)求發(fā)送給服務(wù)器,服務(wù)求接收是否語(yǔ)音聊天,將請(qǐng)求結(jié)果返回給客戶端,如果服務(wù)器端同意進(jìn)行語(yǔ)音聊天,則客戶與好友之間的聊天已經(jīng)連接,如果服務(wù)器端拒絕進(jìn)行語(yǔ)音聊天,則返回消息,好友拒絕接收語(yǔ)音聊天,連接失敗??蛻舳四芊襁M(jìn)行語(yǔ)音聊天返回結(jié)果給客戶端服務(wù)器接收并處理服務(wù)器請(qǐng)求語(yǔ)音聊天客戶端 結(jié) 束 語(yǔ)即時(shí)通信是是網(wǎng)絡(luò)發(fā)展的必然趨勢(shì),它的技術(shù)仍然在不斷的改進(jìn)和蓬勃發(fā)展中。本文主要討論了基于TCP/UDP協(xié)議的局域網(wǎng)即時(shí)通信工具的設(shè)計(jì)與實(shí)現(xiàn)。課題通過(guò)采用基于java平臺(tái)的Eclipse工具來(lái)設(shè)計(jì)并實(shí)現(xiàn)這一通信工具,本次設(shè)計(jì)雖然實(shí)現(xiàn)了簡(jiǎn)單的即時(shí)通信功能,但是從很多方面來(lái)說(shuō)都是不完善的,僅僅只是實(shí)現(xiàn)了簡(jiǎn)單的即時(shí)聊天、好友添加等功能模塊,是一個(gè)簡(jiǎn)單而粗略的系統(tǒng)。在
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- LY/T 2675-2024石斛
- 五年級(jí)下冊(cè)聽(tīng)評(píng)課記錄表
- 魯教版地理七年級(jí)下冊(cè)7.1《自然特征與農(nóng)業(yè)》聽(tīng)課評(píng)課記錄
- 生態(tài)修復(fù)資源共享合同(2篇)
- 甲乙方協(xié)議書(shū)(2篇)
- 2025年硫酸黏菌素類(lèi)產(chǎn)品合作協(xié)議書(shū)
- 七年級(jí)數(shù)學(xué)上冊(cè)第29課時(shí)和、差、倍、分問(wèn)題聽(tīng)評(píng)課記錄新湘教版
- 新版華東師大版八年級(jí)數(shù)學(xué)下冊(cè)《17.3.2一次函數(shù)的圖象1》聽(tīng)評(píng)課記錄21
- 統(tǒng)編版初中語(yǔ)文八年級(jí)下冊(cè)第五課《大自然的語(yǔ)言》聽(tīng)評(píng)課記錄
- 七年級(jí)(人教版)集體備課聽(tīng)評(píng)課記錄:1.2.1《有理數(shù)》
- 機(jī)動(dòng)車(chē)商業(yè)保險(xiǎn)條款(2020版)
- 《大小比較》(說(shuō)課課件)二年級(jí)下冊(cè)數(shù)學(xué)西師大版
- 張五常子女和婚姻合約中的產(chǎn)權(quán)執(zhí)行問(wèn)題
- 口腔粘膜常見(jiàn)疾病
- 校園安全派出所
- 餐廳值班管理培訓(xùn)
- XXXX無(wú)線維護(hù)崗位認(rèn)證教材故障處理思路及案例分析
- 酒店春節(jié)營(yíng)銷(xiāo)方案
- 營(yíng)銷(xiāo)管理方案中的定價(jià)策略與盈利模式
- 2024年西寧城市職業(yè)技術(shù)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 2024年臨沂市高三一模(學(xué)業(yè)水平等級(jí)考試模擬試題)物理試卷
評(píng)論
0/150
提交評(píng)論