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

正文內容

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

2025-04-07 10:25上一頁面

下一頁面
  

【正文】 現了一個局域網的通信軟件,基本滿足了系統(tǒng)結構化、界面友好、速度快、占用資源少、穩(wěn)定等特點。生成的聊天室可以達到基本的局域網聊天要求,具有較高的學習價值和深入的研究價值。通過這次畢業(yè)設計,本 人。 本次畢業(yè)設計所設計開發(fā)的系統(tǒng)著重研究并實現了 Socket 網絡通訊應用的部分。 客戶端 客戶端能夠通過正確的賬號和密碼進行登錄 客戶端能夠實現在線注冊; 客戶端實現了點對點、點對多、多對多的聊天模式; 客戶端能夠改變聊天字體風格; 客戶端能夠選擇切換私聊或者群聊; 客戶端右上角能顯示當前的時間; 客戶端能夠保存聊天信息到本地 txt 文件; 客戶端能夠讀取聊天歷史記錄; 客戶端退出并向所有用戶廣播退出消息; 客戶端正常退出。,39。// sql = insert into userInfo(userName,userPwd,sex,age,) values( 39。 SqlConn sq = new SqlConn()。i++){ if(().charAt(i)==39。 } //年齡有無驗證 if(()==0){ (null, 年齡不能為空 ! )。 31 = ()?男 :女 。一旦服務器關閉了服務,那么客戶端會知道服務器已經停止了服務,并且彈出“無法連接到服務器”的對話框,客戶端也會停止工作。 相應的客戶端的設計要比服務器簡單, Login 類負責實現登陸, Register 類負責實現用戶注冊, ChatRoom 類實現用戶的聊天功能,其中 ChatRoom 單獨用一個線程 18 來處理其具體的操作。本系統(tǒng)在架構設計上將分成 3 個層次,如下圖 35所示, 聊 天 應 用 層接 口 層Socket底 層 圖 35 聊天系統(tǒng)設計層次模型圖 本系統(tǒng)最底層的是 Socket 通信層,負責將客戶端與服務器之間連接起來,并建立 I/O 通道,實現客戶端與服務器的數據傳輸。然后服務器便會執(zhí)行相應線程里面相應的操作流程,比如用戶登陸、用戶注冊、用戶聊天信息轉發(fā)等等。本次畢業(yè)設計的聊天軟件所用到的是 C/S 模式,即需要一個服務器和一個客戶端項目,最后兩個項目完成通信過程。 技術可行性 :本系統(tǒng)的開發(fā)是利用 SQL Server 2021 作為本 系統(tǒng)的后臺數據庫的 ,它是一個支持多用戶的新型數據庫 ,適用于中小規(guī)模的數據量需求。 JDK 是整個 Java 的核心,包括了 Java 運行環(huán)境 、 Java 工具和 Java 基礎的類庫。也就是說在 Java 環(huán)境下,我們使用 TCP/IP 協(xié)議的網絡編程需要采用 Socket 機制。 C/S 模式配備的是點對點的結構模式 , 適用于局域網 , 有可靠的安全性 。例如,在默認狀態(tài)下,一次 “ping”操作發(fā)送 4個數據包 , 發(fā)送的數據包數量是 4包,收到的也是 4包(因為對方 主機 收到后會發(fā)回一個確認收到的數據包)。我們來看看這三次 “ 握手 ” 的簡單過程: 主機 A 向主機 B 發(fā)出連接請求數據包: “我想給你發(fā)數據,可以嗎? ”,這是第一次 “ 握手 ” ; 主機 B 向主機 A 發(fā)送同意連接和要求同步(同步就是兩臺主機一個在發(fā)送,一個在接收,協(xié)調工作)的數據包:“可以,你什么時候發(fā)? ”,這是第二次 “ 握手 ” ; 主機 A 再發(fā)出一個數據包確認主機 B 的要求同步: “我現在就發(fā),你接著吧! ”,這是第三次 “ 握手 ” 。通過面向連接、端到端和可靠的 數據包 發(fā)送。 Java 提供的網絡功能有三大類 : URL, Socket, Datagram: URL 是三大功能中最高級的一種 ,通過 URL Java 程序可以直接送出或讀入網絡上的數據。 多線程 Java 具備內建的多線程功能,可以將一個程序的不同程序段設置為不同的線程,使各線程并發(fā)、獨立執(zhí)行,提高系統(tǒng)的運行效率。在 Java 之前雖然已經有面向對象的程序設計語言問世,但 如 C++這樣的開發(fā)語言并不是完全的面向對象,而是面向過程和面向對象的混合體。它采用了大部分與 C++類似的語法對可能具備危險性的功能加以改進,例如將內存管理改為由語言自己進行管理,以減少程序員的負擔及可能發(fā)生的錯誤。當時 Sun Microsystems 公司為 了發(fā)展消費類電子產品進行了一個名為 Green 的項目計劃。這些通訊軟件各具特色,實現方面各有所長,但由于他們在商業(yè)運營階段,其實現的具體內部機制,我們不得而知,但是無論他們是怎么實現的,最終也逃不過 TCP/IP, UDP 通訊的本質。 課題意義 研究本課題的主要目的在于了解當前通訊軟件的通信 模式,并試著開發(fā)一個能夠實現局域網通信的局域網即時通信軟件,通過這個過程,讓自己更加了解在 Java下,實現通信的具體原理和工作流程。人們可以通過各種軟件建立即時性的聯系,比如人們通常用的Email, , MSN 等等。 本課題主要是基于 Java 這種跨平臺的編程語言,利用 SQL Server 2021 數據庫進行編寫。 關鍵字: Java, Socket,多線程, TCP/UDP, C/S II ABSTRACT With the progress of era, the Inter bee increasingly popularization and popularization. In today39。而這個 “ 聯系方式 ” 又有很多種了,比如郵件、文字會話、語音會話、視屏會話等。通過網絡,我們可以很輕松的和地球那端的人取得聯系。 該軟件完 成后的主要功能有:點對點、點對多、多對多的聊天,服務器對聊天進行統(tǒng)一管理,比如用戶注冊,用戶登陸,踢出用戶等。 于是,本人懷著對網絡通信機制以及原理的極大興趣嘗試利用 Java語言編寫一個微型的局域網聊天軟件,可以供多人在一個局域網中同時進行 聊天通信。 2 第一章 概述 課題背景及意義 課題背景 當今處于一個信息爆炸的時代,隨著 Inter 的迅速普及和發(fā)展,人們之間的溝通和交流變得越來越頻繁,以至于到了人們每天的日常生活都離不開這個具有高效時效性的網絡。這很像我們的電話網絡,中轉通信模式。而騰訊的 ,在功能上則是非常全面的,因為其客戶端時間通訊采用 UDP 方式,所以通訊顯得非常的流暢和方便,也大大減 輕了服務器的負荷。 6 第二章 開發(fā)技術和平臺 開發(fā)技術 Java 語言 Java 發(fā)展歷程 Java 的發(fā)展歷史,可以追朔到 1990 年。 為了解決此類問題, Gosling 決定開發(fā)一種新的語言,并取名為 Oak。 面向對象 面向對象技術是現代工業(yè)的一次革新,提高了軟件的模塊化程度和復用率,縮短了軟件開發(fā)時間,降低了開發(fā)成本。只要計算機安裝了能解釋執(zhí)行字節(jié)碼的 Java 虛擬機 JVM,就可以執(zhí)行字節(jié)碼文件,從而實現 Java 的平臺獨立性。 在 Java 中 ,有一個用來存儲 Inter 地址的類叫 IAddress。其中 TCP 提供 IP 環(huán)境下的數據 可靠傳輸 ,它提供的服務包括 數據流 傳送、可靠性、有效流控、全雙工操作和多路復用。一個 TCP 連接必須要經過三次 “ 握手 ” 才能建立起來,其中的過程非常復雜。比如,我們經常使用 “ping”命令來測試兩臺 主機 之間 TCP/IP 通信是否正常,其實“ping”命令的原理就是向對方主機發(fā)送 UDP 數據包,然后對方主機確認收到數據包,如果數據包是否到達的消息及時反饋回來,那么網絡就是通的。 C/S 模式有以下特點 : C/S 模式將 客戶端 與服務分離 , 系統(tǒng)具有穩(wěn)定性和靈活性 的特點。在 Java 環(huán)境下,Socket 編程主要是基于 TCP/IP 協(xié)議的網絡編程。自從Java 推出以來, JDK 已經成為使用最廣泛的 Java SDK。所以,只要有一臺能運行 Java軟件的電腦即可,而不用考慮到經濟問題。聊天軟件無非就是要實現聊天的功能,那么其最根本的需求就是實現一個聊天的功能。然后,服務器就開始工作了,服務器 會一直處于擁塞狀態(tài),直到接收到 Socket 連接請求?;诳芍赜玫木W絡通信底層,可以實現其他各種實時性較高的應用系統(tǒng)。兩個線程之間分工明確一個負責監(jiān)聽 請求,一個負責處理請求,多線程處理,分工明確。如下圖 44所示, 圖 44 服務器啟動后服務器管理主界面 服務器的關閉 點擊以上圖例所示“關閉服務器”按鈕,服務器便可退出 服務。 = ()。 return。i().length()。++39。 }else{ (+注冊成功! )。++39。實現的相應功能主要有以下部分, 服務器端 服務器能夠監(jiān)聽客戶端的所有操作,并作出相應的處理; 服務器端可以發(fā)送系統(tǒng)消息; 服務器可以管理用戶和用戶消息; 服務器可以踢出非法聊天的用戶; 服務器日志記錄了客戶端登陸、下線的所有信息; 服務器將用戶聊天信息記錄在數據庫中; 服務器正常關閉。所以,我必定會認真總結這次畢業(yè)設計的經驗,以及學習到的知識,來更加的充實自己的閱歷和完善自己的知識覆蓋面。因為,在大學期間,學習 Java 的時間其實很少,而且也不夠深入。還可以以此為拓展,更深入的學習和研究 Socket 網絡通信以及其他的網絡通信模式。所以,總體上來說,該系統(tǒng)還是比較成功的。 (sql)。++39。 boolean flag = false。 } } if(flag!=1){ 32 (null, 電子郵箱格式不正確!請重新輸入! )。 if(age=0||age150){ (null, 輸入年齡無效! )。 return。而如果點擊注冊按鈕的話,就會直接跳到注冊界面,其工作流程圖下圖 413所示, 登 陸 窗 口是 否 有 賬 號 注 冊 賬 號注 冊 信 息 判 斷 合 格注 冊 成 功登 陸 判 斷登 陸 成 功是 否 有 在 線 用 戶發(fā) 送 消 息退 出 系 統(tǒng)登 陸YNYNYNNY等 待YN 圖 413 客戶端工作流程圖 客戶端登陸主界面 登陸客戶端首先進入的是登陸界面,如下圖 414所示, 28 圖 414 用戶登陸界面 客戶端注冊主界面 用戶點擊登陸主界面上的注冊按鈕,會自動跳轉到注冊主界面,如圖 415 所示, 圖 415 注冊主界面 此時用戶可以進行賬號注冊,如下圖 416組圖所示 29 30 圖 416 用戶注冊 用戶注冊時,首先經過客戶端判定是否輸入為空,經過客戶端的判斷后才會將注冊信息發(fā)往服務器,服務器判斷該用戶名是否已經被注冊,然后返回成功或者失敗的結果。 圖 36 用戶聊天信息表 用戶聊天信息表主要用來存儲用戶的聊天信息,包括聊天信息的 id 號,聊天具體信息,聊天內容的時間。 Socket底層設計分為兩大部 分:協(xié)議設計和連接處理。聊天主界面就是我們的聊天室了,這里實現了局域網聊天的功能,包括點對點、點對多、多對多的聊天形式。因此,程序要在 TCP/IP 環(huán)境下,實現服務器端和客戶端兩部分程序。因此 ,本系統(tǒng)在運行上是完全可行的。本次畢業(yè)應用了 JDBC 訪問 SQL Server 2021 數據庫,以完成必要的功能和要求。 硬件環(huán)境 開發(fā) Java 項目所要的硬件要求并不需要太高,達到以下要求即可: ? 處理器: Intel Core2 Duo CPU 或者更高 ? 內存: 1GB 或者更高 ? 網絡:局域網 軟件環(huán)境 操作系統(tǒng): Windows XP 或者其它可用操作系統(tǒng) ? 開發(fā)平臺: Eclipse+AWT 組件庫 ? 開發(fā)語言: Java ? 數據庫: SQL Server 2021 Eclipse Eclipse 是一個開放源代碼的、基于 Java 的可擴展開發(fā)平臺 。 Socket 在網絡上的兩個程序通過一個雙向的通信連接實現數據的交換,這個雙向的鏈路的一般稱為一個 Socket。 但也正因為如此,它的可靠性 沒有TCP 協(xié)議高。 面向非連接的 UDP “面向非連接 ”就是在正式通信前不必與對方先建立連接,不管對方狀態(tài)就直接發(fā)送。 TCP 支持的應用協(xié)議主要有: Tel、 FTP、 SMTP 等;UDP 支持的 應用層 協(xié)議主要有: NFS( 網絡文件系統(tǒng) )、 SNMP( 簡單網絡管理 9 協(xié)議 )、 DNS(主域名稱系統(tǒng))、 TFTP(通用 文件傳輸協(xié)議 )等。 多線程 進程是一個具體的應用程序, 而 線程是進程中的一個分支, 它是 為 了 單獨完成程序中的某一項或一組功能而存在
點擊復制文檔內容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1