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

正文內(nèi)容

基于tcp_ip協(xié)議的聊天工具的設(shè)計(jì)與開(kāi)發(fā)畢業(yè)設(shè)計(jì)論文(參考版)

2025-03-02 10:25本頁(yè)面
  

【正文】 通過(guò)這次畢業(yè)設(shè)計(jì),本 人。 通過(guò)本次畢業(yè)設(shè)計(jì),本人對(duì) Java 的認(rèn)識(shí)水平有了極大的提高。 41 致 謝 近兩個(gè)月的的忙碌,本次畢業(yè)設(shè)計(jì)已經(jīng)接近尾聲,作為一個(gè)本科生的畢業(yè)設(shè)計(jì),由于經(jīng)驗(yàn)的缺乏,難免有許多考慮不周的地方,如果沒(méi)有指導(dǎo)老師的督促指導(dǎo),以及其他同學(xué)的支持,想要完成這個(gè)設(shè)計(jì)是非常困難的。生成的聊天室可以達(dá)到基本的局域網(wǎng)聊天要求,具有較高的學(xué)習(xí)價(jià)值和深入的研究?jī)r(jià)值。 本次畢業(yè)設(shè)計(jì)所設(shè)計(jì)開(kāi)發(fā)的系統(tǒng)著重研究并實(shí)現(xiàn)了 Socket 網(wǎng)絡(luò)通訊應(yīng)用的部分。并且在這一重要而復(fù)雜的領(lǐng)域進(jìn)行了相 關(guān)的實(shí)踐開(kāi)發(fā),不管是對(duì)自我的自學(xué)能力、研究能力,還是實(shí)踐動(dòng)手能力、資料查閱能力,都起到了非常大的促進(jìn)作用和推動(dòng)作用。 在當(dāng)今網(wǎng)絡(luò)遍布的世界,一個(gè)簡(jiǎn)單高效的局域網(wǎng)通信工具是非常有實(shí)用價(jià)值和研究?jī)r(jià)值的。 40 第五章 結(jié)論 本次畢業(yè)設(shè)計(jì)主要應(yīng)用了 Java 下的 Socket 編程實(shí)現(xiàn)了一個(gè)局域網(wǎng)的通信軟件,基本滿足了系統(tǒng)結(jié)構(gòu)化、界面友好、速度快、占用資源少、穩(wěn)定等特點(diǎn)。 客戶端 客戶端能夠通過(guò)正確的賬號(hào)和密碼進(jìn)行登錄 客戶端能夠?qū)崿F(xiàn)在線注冊(cè); 客戶端實(shí)現(xiàn)了點(diǎn)對(duì)點(diǎn)、點(diǎn)對(duì)多、多對(duì)多的聊天模式; 客戶端能夠改變聊天字體風(fēng)格; 客戶端能夠選擇切換私聊或者群聊; 客戶端右上角能顯示當(dāng)前的時(shí)間; 客戶端能夠保存聊天信息到本地 txt 文件; 客戶端能夠讀取聊天歷史記錄; 客戶端退出并向所有用戶廣播退出消息; 客戶端正常退出。 系統(tǒng)功能特點(diǎn)及改進(jìn) 本次畢業(yè)設(shè)計(jì)所設(shè)計(jì)的局域網(wǎng)聊天系統(tǒng),基本上實(shí)現(xiàn)了局域網(wǎng)通信功能。//執(zhí)行數(shù)據(jù)庫(kù)語(yǔ)句 return。)。,39。,39。,39。,39。// sql = insert into userInfo(userName,userPwd,sex,age,) values( 39。 return。 while(()){ flag = true。 ResultSet rs = (sql)。 SqlConn sq = new SqlConn()。 String sql = select * from userInfo where userName=39。 return。){ flag++。i++){ if(().charAt(i)==39。 for(int i = 0。 return。 } /** * 輸入內(nèi)容合法性驗(yàn)證 */ //年齡合法性驗(yàn)證 int age = (())。 } //年齡有無(wú)驗(yàn)證 if(()==0){ (null, 年齡不能為空 ! )。 } //兩次密碼輸入是否相同驗(yàn)證 if(!(())){ (null, 兩次輸入密碼不一致! )。 } //密碼有無(wú)驗(yàn)證 if(()==0){ (null, 密碼不能為空! )。 /** * 對(duì)得到的注冊(cè)用戶信息進(jìn)行驗(yàn)證 */ //用戶名有無(wú)驗(yàn)證 if(()==0){ (null, 用戶名不能為空! )。 31 = ()?男 :女 。 = ()。部分代碼如下, 客戶端判斷: //用戶注冊(cè) SuppressWarnings(deprecation) private void registNewUser() { // TODO Autogenerated method stub //從輸入框接收用戶注冊(cè)詳細(xì)信息并賦給封裝的注冊(cè)用戶信息類對(duì)象 RegistUserInfo registUserInfo = new RegistUserInfo()。如果輸入正確的用戶名和密碼,就會(huì)登錄到聊天室 ChatRoom 主界面。一旦服務(wù)器關(guān)閉了服務(wù),那么客戶端會(huì)知道服務(wù)器已經(jīng)停止了服務(wù),并且彈出“無(wú)法連接到服務(wù)器”的對(duì)話框,客戶端也會(huì)停止工作。其主界面如下圖 42, 43 所示, 20 圖 42 服務(wù)器主界面 圖 43 服務(wù)器用戶管理主界面 21 服務(wù)器的開(kāi)啟 點(diǎn)擊啟動(dòng)服務(wù)器按鈕,便可以啟動(dòng)服務(wù)器,服務(wù)器開(kāi)始提供服務(wù)。 19 第四章 系統(tǒng)的實(shí)現(xiàn) 服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn) 服務(wù)器工作流程圖 服務(wù)器的主要工作室配置服務(wù)器并且啟動(dòng)服務(wù)器,服務(wù)器啟動(dòng)后對(duì)用戶進(jìn)行管理,包括在線用戶管理,踢出違規(guī)用戶,記錄用 戶聊天信息等。 數(shù)據(jù)庫(kù)設(shè)計(jì) 由于本局域網(wǎng)聊天系統(tǒng)主要是以提供聊天服務(wù)為主要目標(biāo),所以所設(shè)計(jì)的數(shù)據(jù)庫(kù)表只有簡(jiǎn)單的兩張,一張用來(lái)存儲(chǔ)用戶信息,一張 用來(lái)存儲(chǔ)用戶的聊天信息,如下圖 35,36 所示, 圖 35 用戶信息表 用戶信息表主要包括了用戶名、密碼、年齡、性別、郵箱 5 個(gè)數(shù)據(jù),分別用來(lái)存儲(chǔ)用戶的用戶名、密碼、年齡、性別、郵箱。 相應(yīng)的客戶端的設(shè)計(jì)要比服務(wù)器簡(jiǎn)單, Login 類負(fù)責(zé)實(shí)現(xiàn)登陸, Register 類負(fù)責(zé)實(shí)現(xiàn)用戶注冊(cè), ChatRoom 類實(shí)現(xiàn)用戶的聊天功能,其中 ChatRoom 單獨(dú)用一個(gè)線程 18 來(lái)處理其具體的操作。 架構(gòu)設(shè)計(jì) 本系統(tǒng)中,服務(wù)器端設(shè)計(jì)兩個(gè)線程,一個(gè)用來(lái)處理客戶端連接請(qǐng)求的監(jiān)聽(tīng)線程,一旦監(jiān)聽(tīng)到 Socket 連接請(qǐng)求,服務(wù)器便進(jìn)入 Connection 線程工作,處理客戶端相應(yīng)請(qǐng)求的操作,比如登陸、注冊(cè)、發(fā)送消息、退出等操作。協(xié)議設(shè)計(jì)就是規(guī)定服務(wù)器的 IP 和默認(rèn)的端口號(hào)( PORT),服務(wù)器在該 IP 和端口號(hào)監(jiān)聽(tīng)客戶端的連接請(qǐng)求。用戶登陸聊天時(shí),將實(shí)現(xiàn)統(tǒng)一的用戶登陸驗(yàn)證機(jī)制。本系統(tǒng)在架構(gòu)設(shè)計(jì)上將分成 3 個(gè)層次,如下圖 35所示, 聊 天 應(yīng) 用 層接 口 層Socket底 層 圖 35 聊天系統(tǒng)設(shè)計(jì)層次模型圖 本系統(tǒng)最底層的是 Socket 通信層,負(fù)責(zé)將客戶端與服務(wù)器之間連接起來(lái),并建立 I/O 通道,實(shí)現(xiàn)客戶端與服務(wù)器的數(shù)據(jù)傳輸。 17 系統(tǒng)設(shè)計(jì) 設(shè) 計(jì)原則 考慮到系統(tǒng)的可重用性和易維護(hù)性,需要將本系統(tǒng)的網(wǎng)絡(luò)底層通信和應(yīng)用系統(tǒng)分開(kāi),做到結(jié)構(gòu)分明、各功能模塊清晰。客戶端工作模式如下圖 34 所示, 啟 動(dòng) 客 戶 端C l i e n t用 戶 登 陸 窗 體L o g i n用 戶 登 陸 窗 體R e g i s t e r進(jìn) 入 聊 天 室C h a t R o o mL i s t e n e r注 冊(cè) 窗 體 時(shí) 間 監(jiān) 聽(tīng) 圖 34 客戶端工作模式圖示 首先我們會(huì)啟動(dòng)客戶端,進(jìn)入類似 登陸的登陸界面 Login,上面有登陸用戶名和密碼輸入框和登陸按鈕,如果用戶輸入正確的用戶名和密碼就會(huì)直接進(jìn)入ChatRoom,如果此時(shí)有其他在線用戶,用戶就可以與他們進(jìn)行即時(shí)聊天了。注冊(cè)是對(duì)用戶開(kāi)放注冊(cè)功能,從而能讓注冊(cè)過(guò)的用戶進(jìn)入聊天室。然后服務(wù)器便會(huì)執(zhí)行相應(yīng)線程里面相應(yīng)的操作流程,比如用戶登陸、用戶注冊(cè)、用戶聊天信息轉(zhuǎn)發(fā)等等。服務(wù)器功能具體的實(shí)現(xiàn)方式如下圖 33 所示, 服 務(wù) 器 端 監(jiān) 聽(tīng) 控 制 窗 體S e r v e r F r a m eS e r v e r L i s t e n T h r e a d啟 動(dòng) 服 務(wù) 器 監(jiān) 聽(tīng) 線 程 一 直 監(jiān) 聽(tīng) 客 戶 端 的 請(qǐng) 求C o n n e c t i o nS t o p關(guān) 閉 服 務(wù) 器 停 止 服 務(wù) 圖 33 服務(wù)器工作模式圖示 開(kāi)啟服務(wù)器時(shí)會(huì)進(jìn)入服務(wù)器控制主界面,上面標(biāo)明了服務(wù)器的 IP、端口號(hào)等重 16 要信息,管理者可以點(diǎn)擊開(kāi)啟按鈕啟動(dòng)服務(wù)器。服務(wù)器與客戶端連接和傳遞數(shù)據(jù)具體實(shí)現(xiàn)的原理如下圖 32 所示: 15 S o c k e t 請(qǐng) 求 建 立 連 接客 戶 端服 務(wù) 器S e r v e r S o c k e t 監(jiān) 聽(tīng) 到請(qǐng) 求 并 建 立 一 個(gè) 與客 戶 端 通 信 的 專 用S o c k e tI / O 通 道 建 立 成 功 后 開(kāi) 始 通 信向 服 務(wù) 器 發(fā) 送 S o c k e t連 接 請(qǐng) 求O u t p u t S t r e a mI n p u t S t r e a m O u t p u t S t r e a mI n p u t S t r e a m流 對(duì) 象 往 返 于 客 戶 端 與 服 務(wù)器 之 間 傳 輸 數(shù) 據(jù) 實(shí) 現(xiàn) 通 訊每 次 完 成 傳 輸 便 關(guān)閉 流 和 S o c k e t每 次 完 成 傳 輸 便 關(guān)閉 流 和 S o c k e t 圖 32服務(wù)器與客戶端實(shí)現(xiàn)數(shù)據(jù)交互通信原理圖 各個(gè)模塊功能詳解 服務(wù)器端結(jié)構(gòu) 服務(wù)器的工作主要是負(fù)責(zé)對(duì)客戶端請(qǐng)求的不斷監(jiān)聽(tīng),它一直處于擁塞狀態(tài),直到有客戶端發(fā)出連接請(qǐng)求為止。綜合以上因素,我對(duì)本次畢業(yè)設(shè)計(jì)所要做的的工作做了以下的總結(jié): 在 Inter 上的聊天程序一般都是以服務(wù)器提供服務(wù)端連接響應(yīng),使用者通過(guò)客戶端程序登錄到服務(wù)器,就可以與登錄在同一服務(wù)器上的用戶交談,這是一個(gè)面向連接的通信過(guò)程。本次畢業(yè)設(shè)計(jì)的聊天軟件所用到的是 C/S 模式,即需要一個(gè)服務(wù)器和一個(gè)客戶端項(xiàng)目,最后兩個(gè)項(xiàng)目完成通信過(guò)程。 系統(tǒng)功能需求 既然該 課題的可行性是已經(jīng)確定,那么我們就可以開(kāi)始分析其具體的功能需求。 綜上所述 ,本系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)在經(jīng)濟(jì)上、軟件上和硬件設(shè)備上的條件都是滿足的。 運(yùn)行可行性 :本系統(tǒng)為一個(gè)小型的局域網(wǎng)聊天系統(tǒng) ,所耗費(fèi)的資源比較少,只要安裝了運(yùn)行該程序所必要的軟件后,就目前的電腦,都是能夠運(yùn)行的。 技術(shù)可行性 :本系統(tǒng)的開(kāi)發(fā)是利用 SQL Server 2021 作為本 系統(tǒng)的后臺(tái)數(shù)據(jù)庫(kù)的 ,它是一個(gè)支持多用戶的新型數(shù)據(jù)庫(kù) ,適用于中小規(guī)模的數(shù)據(jù)量需求。 13 第三章 系統(tǒng)分析與設(shè)計(jì) 系統(tǒng)分析 系統(tǒng)可行性分析 經(jīng)濟(jì)可行性 :由于本系統(tǒng)的主要背景是畢業(yè)設(shè)計(jì),不考慮到直接的經(jīng)濟(jì)效益和其后的商業(yè)發(fā)展,而只在于注重自身水平和能力的提高。 AWT 組件 AWT 是 Abstract Window Toolkit (抽象窗口工具包 )的縮寫(xiě),這個(gè)工具包提供了一套與本地圖形界面進(jìn)行交互的接口。 JDBC 由一組用 Java 語(yǔ)言編寫(xiě)的類和接口組成,通過(guò)調(diào)用這些類和接口所提供的方法,用戶能夠以一致的方式連接多種不同的數(shù)據(jù)庫(kù),從而可使用標(biāo)準(zhǔn)的 SQL 語(yǔ)言來(lái)存取數(shù)據(jù)庫(kù)中的數(shù)據(jù),不必再為每一種數(shù)據(jù)庫(kù)系統(tǒng)編寫(xiě)不同的 Java 代碼。 JDK 是整個(gè) Java 的核心,包括了 Java 運(yùn)行環(huán)境 、 Java 工具和 Java 基礎(chǔ)的類庫(kù)。 JDK(Java Development Kit)是 Sun Microsystems 針對(duì) Java 開(kāi)發(fā)員的產(chǎn)品。就其本身而言, 12 它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境。本次畢業(yè)設(shè)計(jì)所要用到的組件包括 Eclipse 平臺(tái), JDK 解釋器, AWT 組件庫(kù), SQL Server 2021 等。也就是說(shuō)在 Java 環(huán)境下,我們使用 TCP/IP 協(xié)議的網(wǎng)絡(luò)編程需要采用 Socket 機(jī)制。 Socket 所支持的協(xié)議不光有 TCP/IP,還有 UDP。 Socket 通常用來(lái)實(shí)現(xiàn)客戶端和服務(wù)器的連接。 11 在 C/S 模式中 , 作為客戶機(jī)的計(jì)算機(jī)都要安裝客戶機(jī)程序 , 一旦軟件系統(tǒng)升級(jí) , 每臺(tái)客戶機(jī)都要安裝客戶機(jī)程序 , 系統(tǒng)升級(jí)和維護(hù)較為復(fù)雜 。 C/S 模式配備的是點(diǎn)對(duì)點(diǎn)的結(jié)構(gòu)模式 , 適用于局域網(wǎng) , 有可靠的安全性 。 在 C/S 模式的工作過(guò)程中 , 客戶機(jī)程序發(fā)出請(qǐng)求 , 服務(wù)器程序接收并且處理客戶機(jī)程序提出的請(qǐng)求 , 然后返回結(jié)果 。 就使用 UDP 發(fā)消息,因此有時(shí)會(huì)出現(xiàn) 你發(fā)送了消息后,會(huì)出現(xiàn)發(fā)送消息失敗的結(jié)果 。正因?yàn)?UDP 協(xié)議沒(méi)有連接的過(guò)程,所以它的通信效率高 。例如,在默認(rèn)狀態(tài)下,一次 “ping”操作發(fā)送 4個(gè)數(shù)據(jù)包 , 發(fā)送的數(shù)據(jù)包數(shù)量是 4包,收到的也是 4包(因?yàn)閷?duì)方 主機(jī) 收到后會(huì)發(fā)回一個(gè)確認(rèn)收到的數(shù)據(jù)包)。它是 “ 面向非連接 ” 的協(xié)議,它不 會(huì) 與對(duì)方建立連接,而是直接就把 數(shù)據(jù)包 發(fā)送過(guò)去! UDP 適用于一次只傳送少量數(shù)據(jù)、對(duì)可靠性要求不高的應(yīng)用環(huán)境。這與現(xiàn)在 流行 的手機(jī)短信非常相似 : 你在發(fā)短信的時(shí)候,只需要輸入對(duì)方手機(jī)號(hào)就 OK 了 ,至于對(duì)方能否收到,這就不是我們的事情了,一切都交給網(wǎng)絡(luò)處理。 以下是三次 “ 握手 ” 的概念圖 21: 主 機(jī) A 主 機(jī) B第 一 次 握 手 , 主 機(jī) A 向主 機(jī) B 發(fā) 出 連 接 請(qǐng) 求
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1