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

正文內(nèi)容

java基于tcp_ip協(xié)議的聊天工具的設(shè)計(jì)與開(kāi)發(fā)_畢業(yè)設(shè)計(jì)論文-預(yù)覽頁(yè)

 

【正文】 ............................ 21 客戶端的設(shè)計(jì)與實(shí)現(xiàn) .......................................................................................................... 27 客戶端工作流程圖 .................................................................................................... 27 客戶端登陸主界面 .................................................................................................... 27 客戶端注冊(cè)主界面 .................................................................................................... 28 客戶端聊天主界面 .................................................................................................... 32 客戶端之間聊天 ........................................................................................................ 33 用戶下線 ..................................................................................................................... 37 系統(tǒng)功能特點(diǎn)及改進(jìn) .......................................................................................................... 39 第五章 結(jié)論 .................................................................................................................................. 40 致 謝 .............................................................................................................................................. 41 參考文獻(xiàn) ........................................................................................................................................ 41 文獻(xiàn)綜述 ........................................................................................................................................ 41 I 摘 要 隨著時(shí)代的進(jìn)步,互聯(lián)網(wǎng)日益變得普及和大眾化。通過(guò)網(wǎng)絡(luò),我們可以很輕松的和地球那端的人取得聯(lián)系。本次畢業(yè)設(shè)計(jì)的內(nèi)容是基于 Java 的一款局域網(wǎng)即時(shí)通信軟件。 該軟件完成后的主要功能有:點(diǎn)對(duì)點(diǎn)、點(diǎn)對(duì)多、多對(duì)多的聊天,服務(wù)器對(duì)聊天進(jìn)行統(tǒng)一管理,比如用戶注冊(cè),用戶登陸,踢出用戶等。網(wǎng)絡(luò)通信則是實(shí)現(xiàn)人與人之間交互性溝通最好的方式,我們可以通過(guò)網(wǎng)絡(luò)通信實(shí)現(xiàn)異地文字傳輸、語(yǔ)音通話甚至遠(yuǎn)程視頻通話。 于是,本人懷著對(duì)網(wǎng)絡(luò)通信機(jī)制以及原理的極大興趣嘗試?yán)?Java語(yǔ)言編寫一個(gè)微型的局域網(wǎng)聊天軟件,可以供多人在一個(gè)局域網(wǎng)中同時(shí)進(jìn)行 聊天通信。 本次畢業(yè)設(shè)計(jì)所設(shè)計(jì)的聊天系統(tǒng)應(yīng)用了 C/S(客戶端 /服務(wù)器 )模式,這也是軟件開(kāi)發(fā)中一種通用的開(kāi)發(fā)模式。 2 第一章 概述 課題背景及意義 課題背景 當(dāng)今處于一個(gè)信息爆炸的時(shí)代,隨著 Inter 的迅速普及和發(fā)展,人們之間的溝通和交流變得越來(lái)越頻繁,以至于到了人們每天的日常生活都離不開(kāi)這個(gè)具有高效時(shí)效性的網(wǎng)絡(luò)。鑒于即時(shí)通訊軟件在當(dāng)今人們生活中的重要地位,以及本人懷著的對(duì)即時(shí)通訊軟件的通信機(jī)制以及其工作原理的好奇,嘗試用Java 語(yǔ)言編寫一款局域網(wǎng)即時(shí)通信軟件,以此來(lái)實(shí)踐性的研究通信軟件的工作流程。這很像我們的電話網(wǎng)絡(luò),中轉(zhuǎn)通信模式。所以其研究?jī)r(jià)值也是 非??捎^的。而騰訊的 ,在功能上則是非常全面的,因?yàn)槠淇蛻舳藭r(shí)間通訊采用 UDP 方式,所以通訊顯得非常的流暢和方便,也大大減 輕了服務(wù)器的負(fù)荷。他們各自負(fù)責(zé)相應(yīng)的工作,從而實(shí)現(xiàn)局域網(wǎng)各個(gè)客戶端之間的相互通訊。 6 第二章 開(kāi)發(fā)技術(shù)和平臺(tái) 開(kāi)發(fā)技術(shù) Java 語(yǔ)言 Java 發(fā)展歷程 Java 的發(fā)展歷史,可以追朔到 1990 年。但后來(lái)發(fā)現(xiàn) C++并不適合這類任務(wù);因?yàn)?C++常會(huì)使系統(tǒng)失效。 為了解決此類問(wèn)題, Gosling 決定開(kāi)發(fā)一種新的語(yǔ)言,并取名為 Oak。在全球 云計(jì)算和移動(dòng)互聯(lián)網(wǎng)的產(chǎn)業(yè)環(huán)境下, Java 更具備了顯著優(yōu)勢(shì)和廣闊前景。 面向?qū)ο? 面向?qū)ο蠹夹g(shù)是現(xiàn)代工業(yè)的一次革新,提高了軟件的模塊化程度和復(fù)用率,縮短了軟件開(kāi)發(fā)時(shí)間,降低了開(kāi)發(fā)成本。在網(wǎng)絡(luò)環(huán)境下,語(yǔ)言的安全性變得更為重要。只要計(jì)算機(jī)安裝了能解釋執(zhí)行字節(jié)碼的 Java 虛擬機(jī) JVM,就可以執(zhí)行字節(jié)碼文件,從而實(shí)現(xiàn) Java 的平臺(tái)獨(dú)立性。但是隨著 JVM 技術(shù)的進(jìn)步,使得其執(zhí)行速度直逼 C 與 C++。 在 Java 中 ,有一個(gè)用來(lái)存儲(chǔ) Inter 地址的類叫 IAddress。 多線程 進(jìn)程是一個(gè)具體的應(yīng)用程序, 而 線程是進(jìn)程中的一個(gè)分支, 它是 為 了 單獨(dú)完成程序中的某一項(xiàng)或一組功能而存在 的。其中 TCP 提供 IP 環(huán)境下的數(shù)據(jù) 可靠傳輸 ,它提供的服務(wù)包括 數(shù)據(jù)流 傳送、可靠性、有效流控、全雙工操作和多路復(fù)用。 TCP 支持的應(yīng)用協(xié)議主要有: Tel、 FTP、 SMTP 等;UDP 支持的 應(yīng)用層 協(xié)議主要有: NFS( 網(wǎng)絡(luò)文件系統(tǒng) )、 SNMP( 簡(jiǎn)單網(wǎng)絡(luò)管理 9 協(xié)議 )、 DNS(主域名稱系統(tǒng))、 TFTP(通用 文件傳輸協(xié)議 )等。一個(gè) TCP 連接必須要經(jīng)過(guò)三次 “ 握手 ” 才能建立起來(lái),其中的過(guò)程非常復(fù)雜。 面向非連接的 UDP “面向非連接 ”就是在正式通信前不必與對(duì)方先建立連接,不管對(duì)方狀態(tài)就直接發(fā)送。比如,我們經(jīng)常使用 “ping”命令來(lái)測(cè)試兩臺(tái) 主機(jī) 之間 TCP/IP 通信是否正常,其實(shí)“ping”命令的原理就是向?qū)Ψ街鳈C(jī)發(fā)送 UDP 數(shù)據(jù)包,然后對(duì)方主機(jī)確認(rèn)收到數(shù)據(jù)包,如果數(shù)據(jù)包是否到達(dá)的消息及時(shí)反饋回來(lái),那么網(wǎng)絡(luò)就是通的。 但也正因?yàn)槿绱?,它的可靠?沒(méi)有TCP 協(xié)議高。 C/S 模式有以下特點(diǎn) : C/S 模式將 客戶端 與服務(wù)分離 , 系統(tǒng)具有穩(wěn)定性和靈活性 的特點(diǎn)。 Socket 在網(wǎng)絡(luò)上的兩個(gè)程序通過(guò)一個(gè)雙向的通信連接實(shí)現(xiàn)數(shù)據(jù)的交換,這個(gè)雙向的鏈路的一般稱為一個(gè) Socket。在 Java 環(huán)境下,Socket 編程主要是基于 TCP/IP 協(xié)議的網(wǎng)絡(luò)編程。 硬件環(huán)境 開(kāi)發(fā) Java 項(xiàng)目所要的硬件要求并不需要太高,達(dá)到以下要求即可: ? 處理器: Intel Core2 Duo CPU 或者更高 ? 內(nèi)存: 1GB 或者更高 ? 網(wǎng)絡(luò):局域網(wǎng) 軟件環(huán)境 操作系統(tǒng): Windows XP 或者其它可用操作系統(tǒng) ? 開(kāi)發(fā)平臺(tái): Eclipse+AWT 組件庫(kù) ? 開(kāi)發(fā)語(yǔ)言: Java ? 數(shù)據(jù)庫(kù): SQL Server 2020 Eclipse Eclipse 是一個(gè)開(kāi)放源代碼的、基于 Java 的可擴(kuò)展開(kāi)發(fā)平臺(tái) 。自從Java 推出以來(lái), JDK 已經(jīng)成為使用最廣泛的 Java SDK。本次畢業(yè)應(yīng)用了 JDBC 訪問(wèn) SQL Server 2020 數(shù)據(jù)庫(kù),以完成必要的功能和要求。所以,只要有一臺(tái)能運(yùn)行 Java軟件的電腦即可,而不用考慮到經(jīng)濟(jì)問(wèn)題。因此 ,本系統(tǒng)在運(yùn)行上是完全可行的。聊天軟件無(wú)非就是要實(shí)現(xiàn)聊天的功能,那么其最根本的需求就是實(shí)現(xiàn)一個(gè)聊天的功能。因此,程序要在 TCP/IP 環(huán)境下,實(shí)現(xiàn)服務(wù)器端和客戶端兩部分程序。然后,服務(wù)器就開(kāi)始工作了,服務(wù)器會(huì)一直處于擁塞狀態(tài),直到接收到 Socket 連接請(qǐng)求。聊天主界面就是我們的聊天室了,這 里實(shí)現(xiàn)了局域網(wǎng)聊天的功能,包括點(diǎn)對(duì)點(diǎn)、點(diǎn)對(duì)多、多對(duì)多的聊天形式?;诳芍赜玫木W(wǎng)絡(luò)通信底層,可以實(shí)現(xiàn)其他各種實(shí)時(shí)性較高的應(yīng)用系統(tǒng)。 Socket底層設(shè)計(jì)分為兩大部分:協(xié)議設(shè)計(jì)和連接處理。兩個(gè)線程之間分工明確一個(gè)負(fù)責(zé)監(jiān)聽(tīng)請(qǐng)求,一個(gè)負(fù)責(zé)處理請(qǐng)求,多線程處理,分工明確。 圖 36 用戶聊天信息表 用戶聊天信息表主要用來(lái)存儲(chǔ)用戶的聊天信息,包括聊天信息的 id 號(hào),聊天具體信息,聊天內(nèi)容的時(shí)間。如下圖 44所示, 圖 44 服務(wù)器啟動(dòng)后服務(wù)器管 理主界面 服務(wù)器的關(guān)閉 點(diǎn)擊以上圖例所示“關(guān)閉服務(wù)器”按鈕,服務(wù)器便可退出服務(wù)。而如果點(diǎn)擊注冊(cè)按鈕的話,就會(huì)直接跳到注冊(cè)界面,其工作流程圖下圖 413所示, 登 陸 窗 口是 否 有 賬 號(hào) 注 冊(cè) 賬 號(hào)注 冊(cè) 信 息 判 斷 合 格注 冊(cè) 成 功登 陸 判 斷登 陸 成 功是 否 有 在 線 用 戶發(fā) 送 消 息退 出 系 統(tǒng)登 陸YNYNYNNY等 待YN 圖 413 客戶端工作流程圖 客戶端登陸主界面 登陸客戶端首先進(jìn)入的是登陸界面,如下圖 414所示, 28 圖 414 用戶登陸界面 客戶端注冊(cè)主界面 用戶點(diǎn)擊登陸主界面上的注冊(cè)按鈕,會(huì)自動(dòng)跳轉(zhuǎn)到注冊(cè)主界面,如圖 415 所示, 圖 415 注冊(cè)主界面 此時(shí)用戶可以進(jìn)行賬號(hào)注冊(cè),如下圖 416組圖所示 29 30 圖 416 用戶注冊(cè) 用戶注冊(cè)時(shí),首先經(jīng)過(guò)客戶端判定是否輸入為空,經(jīng)過(guò)客戶端的判斷后才會(huì)將注冊(cè)信息發(fā)往服務(wù)器,服務(wù)器判斷該用戶名是否已經(jīng)被注冊(cè),然后返回成功或者失敗的結(jié)果。 = ()。 return。 return。 if(age=0||age150){ (null, 輸入年齡無(wú)效! )。i().length()。 } } if(flag!=1){ 32 (null, 電子郵箱格式不正確!請(qǐng)重新輸入! )。++39。 boolean flag = false。 }else{ (+注冊(cè)成功! )。++39。++39。 (sql)。實(shí)現(xiàn)的相應(yīng)功能主要有以下部分, 服務(wù)器端 服務(wù)器能夠監(jiān)聽(tīng)客戶端的所有操作,并作出相應(yīng)的處理; 服務(wù)器端可以發(fā)送系統(tǒng)消息; 服務(wù)器可以管理用戶和用戶消息; 服務(wù)器可以踢出非法聊天的用戶; 服務(wù)器日志記錄了客戶端登陸、下線的所有信息; 服務(wù)器將用戶聊天信息記錄在數(shù)據(jù)庫(kù)中; 服務(wù)器正常關(guān)閉。所以,總體上來(lái)說(shuō),該系統(tǒng)還是比較成功的。所以,我必定會(huì)認(rèn)真總結(jié)這次畢業(yè)設(shè)計(jì)的經(jīng)驗(yàn),以及學(xué)習(xí)到的知識(shí),來(lái)更加的充實(shí)自己的閱歷和完善自己的知識(shí)覆蓋面。還可以以此為拓展,更深入的學(xué)習(xí)和研究 Socket 網(wǎng)絡(luò)通信以及其他的網(wǎng)絡(luò)通信模式。因?yàn)椋诖髮W(xué)期間,學(xué)習(xí) Java 的時(shí)間其實(shí)很少,而且也不夠深入。 進(jìn)入社會(huì)后 ,我定會(huì)更加努力,在以后的生活中繼續(xù)提高自己,為自己創(chuàng)造更多的機(jī)會(huì),創(chuàng)造美好的明天 ! 42 參考文獻(xiàn) [1] Elliotte Rusty Harold 著,朱濤江、林劍譯 .《 Java 網(wǎng)絡(luò)編程(第三版)》 .中國(guó)電力出版社 . [2] 胡伏湘、雷軍環(huán) .《 Java 程序設(shè)計(jì)實(shí)用教程(第二版)》 .清華大學(xué)出版社 . [3] 王家林 .《 網(wǎng)絡(luò)編程詳解》 .電子工業(yè)出版社 . [4] 王珊、薩師煊 .《數(shù)據(jù)庫(kù)系統(tǒng)概論》 .高等教育出版社 . [5] 王意潔 .《面向?qū)ο蟮臄?shù)據(jù)庫(kù)技術(shù)》 .電子工業(yè)出版社 . [6] 岳昆 .《數(shù)據(jù)庫(kù)技術(shù) : 設(shè)計(jì)與應(yīng)用實(shí)例》 . 清華大學(xué)出版社 . 2020 [7] 余金山、林慧 .《 SQL Server 2020/2020 數(shù)據(jù)庫(kù)開(kāi)發(fā)實(shí)例入門與提高》 .北京: 電子工 業(yè)出版社 .2020 [8] 結(jié)城浩 著,博碩文化 譯 .《 Java 多線程設(shè)計(jì)模式》 .中國(guó)鐵道出版社 . [9] 李建成、郝筱松 .《 Java 語(yǔ)
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1