freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于socket的即時通信系統(tǒng)設計與實現(xiàn)學士學位論文(參考版)

2025-06-25 01:51本頁面
  

【正文】 參考文獻[1]佘其炯.[J],2022,06:4143[2]姚翌.騰訊通 RTX3.3 發(fā)布企業(yè)互聯(lián)與集成技術(shù)世界領先[J].計算機與網(wǎng)絡 2022,07(30):1516[3]李遠杰等.主流即時通軟件通信協(xié)議分析術(shù)[J].計算機應用研究,2022,07(15):46[4] 王宇,[J],2022(32卷、12期):173175[5]康曉寧.讓溝通隨時進行——中建國際企業(yè)即時通信應用實例[J].微電腦世界,2022,04:1416[6]王珊,薩師煊的數(shù)據(jù)庫系統(tǒng)概論(第四版)[M].北京高等教育出版社,2022理工大學學士學位論文36[7] ,2022[8] (美)Douglas E.Comer,David L.Stevens著.TCP/IP網(wǎng)絡互聯(lián)技術(shù)卷3,客戶.服務器編程與應用(Windows套接字版)[M].北京:清華大學出版社,2022,6:1.300[9] 何進, Socket 的 TCP/IP 網(wǎng)絡通訊模式研究[J].計算機應用研究;2022 年 08 期[10]張海藩.軟件工程導論[M].北京清華大學出版社,2022[11] 周坤, Socket 的網(wǎng)絡數(shù)據(jù)傳輸及其安全[J],2022(28):53815388[12]謝希仁.計算機網(wǎng)絡(第五版) [M].北京電子工業(yè)出版社,2022.184188[13]耿祥議, 張躍平.Ja。3.設計并實現(xiàn)了一個即時通信系統(tǒng),包括了即時通信服務端和即時通信客戶端;即時通信服務器主要實現(xiàn)部門與用戶信息管理、接收客戶端登錄、下線、離線的文本信息、向客戶端發(fā)送狀態(tài)通知、離線的文本信息等功能;即時通信客戶端主要實現(xiàn)登錄服務器、文本、文件通信等功能。2.分析了一個P2P和C/S相結(jié)合的混合通信模型。該系統(tǒng)按照面向?qū)ο蠓椒ㄔO計并封裝了大量的類,并且大量采用了多線程技術(shù),這些方法和技術(shù)有效增強了服務器的并發(fā)處理能力,同時也有利于系統(tǒng)開發(fā)與維護工作的開展。 結(jié) 論本文主要研究和實現(xiàn)了一種符合當前學校實際應用需求的即時通信系統(tǒng)。 //將消息添加到文本域顯示 }〔 atch(IOException e){}理工大學學士學位論文33 聊天系統(tǒng)的運行界面 圖 是聊天系統(tǒng)的運行界面,其中第一個是服務器,其他是三個不同的客戶。 try{ String str=new String( dis. readUTF())。//發(fā)送數(shù)據(jù) }〔itch( IOException z){}}})。 當客戶要發(fā)送數(shù)據(jù)的時候,先將數(shù)據(jù)發(fā)送到服務器,然后由服務器轉(zhuǎn)發(fā)給其他正在檢測的用戶,下面代碼就是主要負責向其他客戶發(fā)送數(shù)據(jù)。 DataInputStre}n lis= new DataInputStre}n( s1. gelInputStream())。 Socket s1=new Socket(“LBG,8 000)。二是要隨時接收來自其他客戶的信息并顯示出來 .因此,在客戶端也采用多線程實現(xiàn),應用程序主線程負責圖形界面的輸入處理,而接收消息線程負責讀取其它客戶發(fā)來的數(shù)據(jù)。//轉(zhuǎn)發(fā)給其他戶 }}〔 atch( IOException e){} }}} 每個通信線程均在循環(huán)檢測是否本線程對應的客戶有數(shù)據(jù)發(fā)送過來,一旦接收到數(shù)據(jù)就通過循環(huán)將數(shù)據(jù)發(fā)送到所有客戶(包括自己)的 Socket 通道。 i++){ talks。 for(int i= 0。 / /客戶數(shù) String message=“第”+( id+ 1) +“個客戶發(fā)言 :”+din. readUTF( ) 。 this. lin= lin。 / /來自客戶的輸入流 public Client(int i1, DataOutputStream los,DatalnputStream din) {this. i1= i1。 //客戶標識 DataOutputStream los。 //創(chuàng)建與客戶對應的通信線 〔lientnum++。 allclient }〔lientnum }=nc}v Client(dientnum,dos, din)。 / /等待客戶連接 DataOutputStream los=nc}v DataOutputStream(s1. get0utputStream())。 //連接客戶數(shù) public static void main( String args}])理工大學學士學位論文31{try{ServerSocket s= nrw ServerSocket( 8000)。程序代碼如下:public〔lass talkserver{public static Client]allclient= nc}v Client[ 20}。為了實現(xiàn)兩個目標,必須設法將任務分開,可以借助多線程技術(shù),在服務方為每個客戶連接建立一個通信線程,通信線程負責接受客戶的消息并將消息轉(zhuǎn)發(fā)給其他客戶。 聊天服務器端 聊天服務端的主要任務有兩個:一是監(jiān)聽某端口,建立與客戶的 Socket 連接,處理一個客戶的連接后,能很快再進入監(jiān)聽狀態(tài)。 方案二:將服務器寫成多線程的,責循環(huán)等待,處理線程負責網(wǎng)絡連接,接收客戶輸入的信息。 本章小結(jié) 本章首先進行了對系統(tǒng)的總體實現(xiàn)方案和類的設計進行了研究,研究了它所用到的協(xié)議,其次說明了各類的功能,再說明了系統(tǒng)如何實現(xiàn)各個功能,最后概述了系統(tǒng)的詳細設計和具體實現(xiàn)方法,畫出了各部分的圖示。其中ServerTest 類主要用于發(fā)送文件,ClientTest類用于計算文件的長度、接收文件,Jprocess類用于生成文件發(fā)送的進度條。文件傳輸除了能實現(xiàn)文件的接收與發(fā)送的基本功能外,還需要考慮以下方面:(1) 文件在傳輸過程中應不影響用戶界面的操作;(2) 在傳輸文件前,發(fā)送方應先發(fā)送請求,接收方可以同意或拒絕文件發(fā)送,接收方同意后才能進行文件傳輸;(3) 在文件在傳輸過程中,可以顯示文件的信息,如文件名、保存路徑、文件大??; (4) 文件在傳輸過程中接收方和發(fā)送方都可以取消該文件傳輸過程;(5) 一個用戶可以同時和多個用戶進行文件傳輸,而且每兩個用戶之間,可以同時接收或發(fā)送多個文件,接收和發(fā)送可以同時進行。通過該方式建立起來的 C/S 程序即可實現(xiàn)一臺服務器端和一臺客戶端的通信。連接是由客戶發(fā)出的,客戶方在建立自己的 Socket 后,向服務器發(fā)出連接請求,服務器在檢測到連接后接受,這樣就建立了一個完整的 Socket 連接。理工大學學士學位論文26服務請求服務響應圖 流式套接字圖 建立連接請求數(shù)據(jù)應答數(shù)據(jù) 圖 數(shù)據(jù)報套接字圖 Socket()Bind()等待客戶請求Rendform()()Close()Send()Send()Rendform()Close()Bind()Socket()處理請求Socket()Bind()Listen()等待客戶請求Accept()Close()Rend()Write()Connect()Write()Read()Close()Socket()理工大學學士學位論文27 面向連接的 Socket 機制的模塊設計圖 是一個典型的面向連接的 Socket 通信機制的示意圖。并且由于它是無連接的,因此可以接收網(wǎng)絡上任何一臺機器所發(fā)的數(shù)據(jù)包。無連接的服務器一般都是面向事務處理的,大多數(shù)的數(shù)據(jù)報套接字應用程序?qū)⑹褂靡粋€事件序列來完成客戶應用程序和服務器應用程序之間的通信,其編程過程相對。實際使用中,數(shù)據(jù)報套接字一般用于一些輕負載的局域網(wǎng)上的計算機之間的通信,同一個分組數(shù)據(jù)報可能不止一次地被發(fā)送,一般要等到接收方發(fā)回確認收到的消息才停止發(fā)送。2.數(shù)據(jù)報套接字數(shù)據(jù)報套接字節(jié)提供了不可靠的、無連接的數(shù)據(jù)包通信方式。服務器上的監(jiān)聽套接字仍處于監(jiān)聽的狀態(tài),隨時準備接受其他客戶機的連接請求。TCP 服務端Socket()Bind()Listen()等待客戶請求Accept()CloseSocket()Recv()Send()Connect()Send()Recv()CloseSocket()Socket()TCP 客戶端理工大學學士學位論文25首先,服務器要創(chuàng)建一個用于監(jiān)聽的套接字,把它綁定到眾所周知的服務器端口上,然后調(diào)用 listen 函數(shù)使它處于監(jiān)聽狀態(tài);客戶機在創(chuàng)建套接字后,即可調(diào)用connect 函數(shù),請求與服務器套接字連接;服務器套接字在收到客戶機的連接請求后,調(diào)用 accept 函數(shù)來接收客戶機的連接請求,并創(chuàng)建另一個用于通信的套接字。流式套接字的服務進程和客戶進程在通信前必須創(chuàng)建各自的套接字并建立連接,然后才能對相應的套接字進行“讀”、“寫”操作,實現(xiàn)數(shù)據(jù)傳輸。此外,在數(shù)據(jù)傳輸時,如果連接斷開,應用程序會被通知的。不管是對單個的數(shù)據(jù)報,還是對數(shù)據(jù)包,流式套接字都提供了一種流式數(shù)據(jù)傳輸,是TCP傳輸協(xié)議的接口 [12]。 利用 Socket 進行 TCP 連接Socket進行TCP網(wǎng)絡連接,是一種客戶/服務器的連接類型,利用Socket 的API進行。(1) ConnectionThread該類是客戶端發(fā)送給服務器消息,接收服務器消息的類,也是客戶端眾多線程中的主線程(2) RegisterInfo和RegisterFrameRegisterFrame類用來生成注冊頁面,完成注冊界面相應的布局,RegisterInfo類用來生成填寫注冊信息界面,驗證注冊信息格式是否正確,如果不正確給出相應的提示信息 (3) ChatF和ChatF1ChatF1類主要實現(xiàn)客戶端與客戶端點對點的私聊,實現(xiàn)文件傳輸,發(fā)送消息主要用函數(shù)sendMessage(),文件傳輸主要在 actionPerformed()中實現(xiàn),ChatF類主要實現(xiàn)多人理工大學學士學位論文23群聊發(fā)送消息也是用函數(shù)sendMessage() 來實現(xiàn)(4) History該類主要用于歷史記錄讀取,關閉聊天窗口,如果歷史記錄為空給出提示信息(5) ListF主要用于生成在線好友列表(6) FindFriendFrame該類主要用于根據(jù)qq號查找好友,然后添加好友,實現(xiàn)通信(7) Dao該類用于實現(xiàn)服務器與數(shù)據(jù)庫的連接,處理數(shù)據(jù)(8) Server該類是服務器實現(xiàn)通信,與客戶端進行交互的類,用于接收客戶端的各種操作請求,處理相應的請求(每個請求由特殊字符來區(qū)分),響應請求,實現(xiàn)客戶端與客戶端,客戶端與服務器實現(xiàn)通信。2.系統(tǒng)通信核心類類用于描述一組具有相同屬性、操作、關系和語義的對象 [20]。信息交流的絕大部分功能都在系統(tǒng)的客戶端完成。NYNY圖 客戶端通信流程圖客戶端的即時通信工作流程可作如下描述:1.啟動客戶端,首先進行注冊,注冊成功開始顯示登錄界面驗證成功建立連接顯示主界面文件傳輸向服務器發(fā)送請求服務器接受請求并處理實現(xiàn)用戶請求客戶端退出結(jié)束結(jié)束添加刪除好友文件傳輸理工大學學士學位論文222.顯示登錄主界面,輸入賬號和密碼,用戶開始登錄;3.客戶端開始在線偵聽,用戶可以在主界面進行某種操作;4.用戶可以發(fā)送各種聊天信息,文件傳輸請求等應用請求;5.請求發(fā)出后自動等待服務器返回的數(shù)據(jù),解讀該數(shù)據(jù)并判定請求的結(jié)果;6.執(zhí)行結(jié)果,并保存處理信息至本地鏈接(若干文件組成);7.在客戶端退出前循環(huán)執(zhí)行用戶的各種操作,并發(fā)送各種請求;8.客戶端退出則斷開該連接。所示。在線程里,按照接收到數(shù)據(jù)的類別(用特殊字符來辨別),進行相應的處理,如有需要,會向用戶發(fā)送處理的結(jié)果,處理結(jié)束后,線程就結(jié)束了。客戶端服務器客戶端客戶端數(shù)據(jù)庫理工大學學士學位論文17圖 即時通信系統(tǒng)框架圖(C/S)圖 即時通信系統(tǒng)框架圖(P2P) 系統(tǒng)功能模塊設計根據(jù)企業(yè)內(nèi)部溝通的需要,以及從實際出發(fā),:1.服務器功能(1) 部門和用戶管理功能模塊在企業(yè)內(nèi)部溝通中必須得了解企業(yè)內(nèi)部的組織架構(gòu),這個模塊就是系統(tǒng)管理員在按照企業(yè)實際組織結(jié)構(gòu),創(chuàng)建了各級部門并輸入部門信息,然后根據(jù)部門再創(chuàng)建用戶信息,用戶不需要自由的添加,最終完成企業(yè)組織的搭建;(2) 用戶登錄處理模塊此模塊主要是進行登錄驗證,如果驗證通過,服務器會將數(shù)據(jù)庫中的用戶狀態(tài)改歷史記錄保存文件傳輸點對點私聊多人群聊用戶服務器文字通信文字傳輸用戶 用戶理工大學學士學位論文18為在線,并通知其他在線用戶;(3) 用戶狀態(tài)通知模塊用戶進行狀態(tài)檢測,好友在線,在好友列表中顯示,如果好友不在列表中,用戶狀態(tài)為離線;(4) 用戶消息、文件轉(zhuǎn)發(fā)用于發(fā)給離線用戶的消息或文件;(5) 用戶下線處理模塊用戶下線,斷開連接,修改數(shù)據(jù)庫中的用戶狀態(tài)并通知其他用戶;2.客戶端功能客戶端提供用戶友好操作界面,負責發(fā)出請求和接收結(jié)果,主要功能有用戶登錄、文字通信、文件傳輸、歷史記錄保存、好友管理等,通過底層協(xié)議傳輸數(shù)據(jù),并在協(xié)議解析模塊解析信息。其系統(tǒng)總體框架如圖。本系統(tǒng)采用的是三層式的C/S 構(gòu)架來保證網(wǎng)絡通信的機制:客戶端、服務器端,服務數(shù)據(jù)庫。 本
點擊復制文檔內(nèi)容
法律信息相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1