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

正文內(nèi)容

java基于tcp_ip協(xié)議的聊天工具的設(shè)計與開發(fā)_畢業(yè)設(shè)計論文(留存版)

2024-10-26 17:54上一頁面

下一頁面
  

【正文】 息,如圖 410 組圖所示, 25 圖 410 服務(wù)器向所有用戶發(fā)送消息 服務(wù)器踢出非法聊天用戶,如下圖 411 組圖所示, 26 圖 411 服務(wù)器踢出非法聊天用戶 現(xiàn)在,有一個用戶下線了,服務(wù)器刷新在線用戶列表和在線人數(shù),同時更 新服務(wù)器日志,如下圖 412 所示, 27 圖 412 有一個用戶下線了 客戶端的設(shè)計與實現(xiàn) 客戶端工作流程圖 客戶端啟動會首先進入登陸 (Login)界面,登陸界面上不但有登陸按鈕,還有注冊按鈕。它通過接口層和最上面的應(yīng)用層保持即時性的 數(shù)據(jù)傳遞。具體的功能我用 Visio 圖演示出來,如圖 31, 14 局 域 網(wǎng) 多 人 同 時在 線 聊 天 系 統(tǒng)服 務(wù) 器 客 戶 端開 啟服 務(wù)器( 關(guān)閉 服務(wù)器 )改 變聊 文字 風(fēng)格 ,發(fā) 送聊 天自 帶文 字性 語氣保 存用 戶聊 天信 息到 數(shù)據(jù) 庫聊 天室 群聊 或者 私聊注 冊登 陸踢 出非 法聊 天用 戶監(jiān) 視客 戶端 聊天 信息監(jiān) 聽客 戶端 登陸 請求保 存服 務(wù)器 日志 到本 地t x t 文件 下用 戶上 下線 提示 ,在 線用 戶列表 ,在 線用 戶數(shù)發(fā) 送系 統(tǒng)消 息 圖 31 局域網(wǎng)聊天系統(tǒng)功能示意圖 系統(tǒng)實現(xiàn)原理 聊天系統(tǒng)的設(shè)計跟一般網(wǎng)站的設(shè)計有著許多不同的地方,一般來說,網(wǎng)站設(shè)計所考慮的因素包括大量的界面美化以及動態(tài)效果等,而聊天室只要能提供實現(xiàn)用戶之間即時性的 聊天通信即可,但也要做一定美化效果,不然,當(dāng)用戶一看著聊天軟件就沒了聊天的心情,那就太糟糕了。 SQL Server 2020 和 JDBC JDBC 是一種用于執(zhí)行 SQL 語句的 Java API 應(yīng)用程序接口,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一的訪問接口。 由于客戶端實現(xiàn)與服務(wù)器端的直接連接 , 沒有中間環(huán)節(jié) , 因此響應(yīng)速度快 。三次 “ 握手 ” 的目的是使數(shù)據(jù)包的發(fā)送和接收同步,經(jīng)過三次 “ 握手 ” 之后, 主機 A 才向主機 B 正式發(fā)送數(shù)據(jù)。 Socket 是傳統(tǒng)網(wǎng)絡(luò)程序最常用的方式,可以認(rèn)為 Socket 形如其名插座之意,只要有插頭插上了就能夠傳道電流,而這個電流,我們就可以想象成 Socket 通信中的 Stream(流 )了。 Java 則是完全面向?qū)ο蟮某绦蛟O(shè)計語言。這個計劃的負(fù)責(zé)任是 James Gosling。 本系統(tǒng)應(yīng)用了基于 Socket 局域網(wǎng)通信模式,它為我們提供了一種良好的、安全的通信機制,而且這個在實踐中更好的詮釋了 Socket 的通信的根本原理,具有很好的學(xué)習(xí)和研究價值,可以更深入地提高本人對于 Socket 通信機制的理解和認(rèn)識。通過 JDBC 將 Java 和數(shù)據(jù)庫連接起來,從而,我們可以用 Java 來操作數(shù)據(jù)庫。 眾所周知的 ,擁有上億的注冊用戶,在國內(nèi)即時通訊領(lǐng)域占據(jù)了第一的位置,因為其具有強大的功能,可以實現(xiàn)文字通訊、語音通訊甚至即時的視屏通訊。利用 Eclipse進行開發(fā)。最后實現(xiàn)局域網(wǎng)即時 通訊功能。比如單一 TCP 通信的 MSN,在穩(wěn)定傳輸和安全性上是可圈可點的。面包機上的程序錯 誤可能使面包機燒壞甚至爆炸。 Java 源程序經(jīng)過編譯后生成字節(jié)碼文件,而字節(jié)碼與具體的計算機無關(guān)。 TCP/UDP 協(xié)議 TCP (Transmission Control Protocol)和 UDP(User Datagram Protocol)屬于 傳輸層 協(xié)議。它是 “ 面向非連接 ” 的協(xié)議,它不 會 與對方建立連接,而是直接就把 數(shù)據(jù)包 發(fā)送過去! UDP 適用于一次只傳送少量數(shù)據(jù)、對可靠性要求不高的應(yīng)用環(huán)境。 Socket 所支持的協(xié)議不光有 TCP/IP,還有 UDP。 13 第三章 系統(tǒng)分析與設(shè)計 系統(tǒng)分析 系統(tǒng)可行性分析 經(jīng)濟可行性 :由于本系統(tǒng)的主要背景是畢業(yè)設(shè)計,不考慮到直接的經(jīng)濟效益和其后的商業(yè)發(fā)展,而只在于注重自身水平和能力的提高。服務(wù)器功能具體的實現(xiàn)方式如下圖 33 所示, 服 務(wù) 器 端 監(jiān) 聽 控 制 窗 體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啟 動 服 務(wù) 器 監(jiān) 聽 線 程 一 直 監(jiān) 聽 客 戶 端 的 請 求C o n n e c t i o nS t o p關(guān) 閉 服 務(wù) 器 停 止 服 務(wù) 圖 33 服務(wù)器工作模式圖示 開啟服務(wù)器時會進入服務(wù)器控制主界面,上面標(biāo)明了服務(wù)器的 IP、端口號等重 16 要信息,管理者可以點擊開啟按鈕啟動服務(wù)器。 架構(gòu)設(shè)計 本系統(tǒng)中,服務(wù)器端設(shè)計兩個線程,一個用來處理客戶端連接請求的監(jiān)聽線程,一旦監(jiān)聽到 Socket 連接請求,服務(wù)器便進入 Connection 線程工作,處理客戶端 相應(yīng)請求的操作,比如登陸、注冊、發(fā)送消息、退出等操作。 = ()。 for(int i = 0。 return。 系統(tǒng)功能特點及改進 本次畢業(yè)設(shè)計所設(shè)計的局域網(wǎng)聊天系統(tǒng),基本上實現(xiàn)了局域網(wǎng)通信功能。 通過本次畢業(yè)設(shè)計,本人對 Java 的認(rèn)識水平有了極大的提高。 本次畢業(yè)設(shè)計所設(shè)計開發(fā)的系統(tǒng)著重研究并實現(xiàn)了 Socket 網(wǎng)絡(luò)通訊應(yīng)用的部分。,39。 SqlConn sq = new SqlConn()。 } //年齡有無驗證 if(()==0){ (null, 年齡不能為空 ! )。一旦服務(wù)器關(guān)閉了服務(wù),那么客戶端會知道服務(wù)器已經(jīng)停止了服務(wù),并且彈出“無法連接到服務(wù)器”的對話框,客戶端也會停止工作。本系統(tǒng)在架構(gòu)設(shè)計上將分成 3 個層次,如下圖 35所示, 聊 天 應(yīng) 用 層接 口 層Socket底 層 圖 35 聊天系統(tǒng)設(shè)計層次模型圖 本系統(tǒng)最底層的是 Socket 通信層,負(fù)責(zé)將客戶端與服務(wù)器之間連接起來,并建立 I/O 通道,實現(xiàn)客戶端與服務(wù)器的數(shù)據(jù)傳輸。本次畢業(yè)設(shè)計的聊天軟件所用到的是 C/S 模式,即需要一個服務(wù)器和一個客戶端項目,最后兩個項目完成通信過程。 JDK 是整個 Java 的核心,包括了 Java 運行環(huán)境 、 Java 工具和 Java 基礎(chǔ)的類庫。 C/S 模式配備的是點對點的結(jié)構(gòu)模式 , 適用于局域網(wǎng) , 有可靠的安全性 。我們來看看這三次 “ 握手 ” 的簡單過程: 主機 A 向主機 B 發(fā)出連接請求數(shù)據(jù)包: “我想給你發(fā)數(shù)據(jù),可以嗎? ”,這是第一次 “ 握手 ” ; 主機 B 向主機 A 發(fā)送同意連接和要求同步(同步就是兩臺主機一個在發(fā)送,一個在接收,協(xié)調(diào)工作)的數(shù)據(jù)包:“可以,你什么時候發(fā)? ”,這是第二次 “ 握手 ” ; 主機 A 再發(fā)出一個數(shù)據(jù)包確認(rèn)主機 B 的要求同步: “我現(xiàn)在就發(fā),你接著吧! ”,這是第三次 “ 握手 ” 。 Java 提供的網(wǎng)絡(luò)功能有三大類 : URL, Socket, Datagram: URL 是三大功能中最高級的一種 ,通過 URL Java 程序可以直接送出或讀入網(wǎng)絡(luò)上的數(shù)據(jù)。在 Java 之前雖然已經(jīng)有面向?qū)ο蟮某绦蛟O(shè)計語言問世,但 如 C++這樣的開發(fā)語言并不是完全的面向?qū)ο螅敲嫦蜻^程和面向?qū)ο蟮幕旌象w。當(dāng)時 Sun Microsystems 公司為 了發(fā)展消費類電子產(chǎn)品進行了一個名為 Green 的項目計劃。 課題意義 研究本課題的主要目的在于了解當(dāng)前通訊軟件的通信 模式,并試著開發(fā)一個能夠?qū)崿F(xiàn)局域網(wǎng)通信的局域網(wǎng)即時通信軟件,通過這個過程,讓自己更加了解在 Java下,實現(xiàn)通信的具體原理和工作流程。 本課題主要是基于 Java 這種跨平臺的編程語言,利用 SQL Server 2020 數(shù)據(jù)庫進行編寫。而這個 “ 聯(lián)系方式 ” 又有很多種了,比如郵件、文字會話、語音會話、視屏?xí)挼取? 該軟件完成后的主要功能有:點對點、點對多、多對多的聊天,服務(wù)器對聊天進行統(tǒng)一管理,比如用戶注冊,用戶登陸,踢出用戶等。 2 第一章 概述 課題背景及意義 課題背景 當(dāng)今處于一個信息爆炸的時代,隨著 Inter 的迅速普及和發(fā)展,人們之間的溝通和交流變得越來越頻繁,以至于到了人們每天的日常生活都離不開這個具有高效時效性的網(wǎng)絡(luò)。而騰訊的 ,在功能上則是非常全面的,因為其客戶端時間通訊采用 UDP 方式,所以通訊顯得非常的流暢和方便,也大大減 輕了服務(wù)器的負(fù)荷。 為了解決此類問題, Gosling 決定開發(fā)一種新的語言,并取名為 Oak。只要計算機安裝了能解釋執(zhí)行字節(jié)碼的 Java 虛擬機 JVM,就可以執(zhí)行字節(jié)碼文件,從而實現(xiàn) Java 的平臺獨立性。其中 TCP 提供 IP 環(huán)境下的數(shù)據(jù) 可靠傳輸 ,它提供的服務(wù)包括 數(shù)據(jù)流 傳送、可靠性、有效流控、全雙工操作和多路復(fù)用。比如,我們經(jīng)常使用 “ping”命令來測試兩臺 主機 之間 TCP/IP 通信是否正常,其實“ping”命令的原理就是向?qū)Ψ街鳈C發(fā)送 UDP 數(shù)據(jù)包,然后對方主機確認(rèn)收到數(shù)據(jù)包,如果數(shù)據(jù)包是否到達的消息及時反饋回來,那么網(wǎng)絡(luò)就是通的。在 Java 環(huán)境下,Socket 編程主要是基于 TCP/IP 協(xié)議的網(wǎng)絡(luò)編程。所以,只要有一臺能運行 Java軟件的電腦即可,而不用考慮到經(jīng)濟問題。然后,服務(wù)器就開始工作了,服務(wù)器會一直處于擁塞狀態(tài),直到接收到 Socket 連接請求。兩個線程之間分工明確一個負(fù)責(zé)監(jiān)聽請求,一個負(fù)責(zé)處理請求,多線程處理,分工明確。 = ()。i().length()。 }else{ (+注冊成功! )。實現(xiàn)的相應(yīng)功能主要有以下部分, 服務(wù)器端 服務(wù)器能夠監(jiān)聽客戶端的所有操作,并作出相應(yīng)的處理; 服務(wù)器端可以發(fā)送系統(tǒng)消息; 服務(wù)器可以管理用戶和用戶消息; 服務(wù)器可以踢出非法聊天的用戶; 服務(wù)器日志記錄了客戶端登陸、下線的所有信息; 服務(wù)器將用戶聊天信息記錄在數(shù)據(jù)庫中; 服務(wù)器正常關(guān)閉。因為,在大學(xué)期間,學(xué)習(xí) Java 的時間其實很少,而且也不夠深入。所以,我必定會認(rèn)真總結(jié)這次畢業(yè)設(shè)計的經(jīng)驗,以及學(xué)習(xí)到的知識,來更加的充實自己的閱歷和完善自己的知識覆蓋面。++39。++39。 return。如下圖 44所示, 圖 44 服務(wù)器啟動后服務(wù)器管 理主界面 服務(wù)器的關(guān)閉 點擊以上圖例所示“關(guān)閉服務(wù)器”按鈕,服務(wù)器便可退出服務(wù)。基于可重用的網(wǎng)絡(luò)通信底層,可以實現(xiàn)其他各種實時性較高的應(yīng)用系統(tǒng)。聊天軟件無非就是要實現(xiàn)聊天的功能,那么其最根本的需求就是實現(xiàn)一個聊天的功能。自從Java 推出以來, JDK 已經(jīng)成為使用最廣泛的 Java SDK。 C/S 模式有以下特點 : C/S 模式將 客戶端 與服務(wù)分離 , 系統(tǒng)具有穩(wěn)定性和靈活性 的特點。一個 TCP 連接必須要經(jīng)過三次 “ 握手 ” 才能建立起來,其中的過程非常復(fù)雜。 在 Java 中 ,有一個用來存儲 Inter 地址的類叫 IAddress。 面向?qū)ο? 面向?qū)ο蠹夹g(shù)是現(xiàn)代工業(yè)的一次革新,提高了軟件的模塊化程度和復(fù)用率,縮短了軟件開發(fā)時間,降低了開發(fā)成本。 6 第二章 開發(fā)技術(shù)和平臺 開發(fā)技術(shù) Java 語言 Java 發(fā)展歷程 Java 的發(fā)展歷史,可以追朔到 1990 年。這很像我們的電話網(wǎng)絡(luò),中轉(zhuǎn)通信模式。 于是,本人懷著對網(wǎng)絡(luò)通信機制以及原理的極大興趣嘗試?yán)?Java語言編寫一個微型的局域網(wǎng)聊天軟件,可以供多人在一個局域網(wǎng)中同時進行 聊天通信。通過網(wǎng)絡(luò),我們可以很輕松的和地球那端的人取得聯(lián)系。 關(guān)鍵字: Java, Socket,多線程, TCP/UDP, C/S II ABSTRACT With the progress of era, the Inter bee increasingly popularization and popularization. In today39。人們可以通過各種軟件建立即時性的聯(lián)系,比如人們通常用的Email, , MSN 等等。這些通訊軟件各具特色,實現(xiàn)方面各有所長,但由于他們在商業(yè)運營階段,其實現(xiàn)的具體內(nèi)部機制,我們不得而知,但是無論他們是怎么實現(xiàn)的,最終也逃不過 TCP/IP, UDP 通訊的本質(zhì)。它采用了大部分與 C++類似的語法對可能具備危險性的功能加以改進,例如將內(nèi)存管理改為由語言自己進行管理,以減少程序員的負(fù)擔(dān)及可能發(fā)生的錯誤。 多線程 Java 具備內(nèi)建的多線程功能,可以將一個程序的不同程序段設(shè)置為不同的線程,使各線程并發(fā)、獨立執(zhí)行,提高系統(tǒng)的運行效率。通過面向連接、端到端和可靠的 數(shù)據(jù)包 發(fā)送。例如,在默認(rèn)狀態(tài)下,一次 “ping”操作發(fā)送 4個數(shù)據(jù)包 , 發(fā)送的數(shù)據(jù)包數(shù)量是 4包,收到的也是 4包(因為對方 主機 收到后會發(fā)回一個確認(rèn)收到的數(shù)據(jù)包)。也就是說在 Java 環(huán)境下,我們使用
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1