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

正文內(nèi)容

java聊天室系統(tǒng)的設(shè)計與實現(xiàn)-在線瀏覽

2024-09-07 10:14本頁面
  

【正文】 :有連接方式(TCP)和無連接方式(UDP 數(shù)據(jù)報) 。通信鏈路提供了可靠的,全雙工的字節(jié)流服務(wù)。無連接方式開銷小于有連接方式,但是所提供的數(shù)據(jù)傳輸服務(wù)不可靠,不能保證數(shù)據(jù)報一定到達(dá)目的地 [14]。Socket 是兩個進(jìn)程間通信鏈的端點,每個 Socket 有兩個流:一個輸入流和一個輸出流。有連接通信一般要經(jīng)歷以下四個基本步驟:創(chuàng)建 Socket,建立連接;打開連接到 Socket 的輸入/輸出流;按照一定的協(xié)議對 Socket 進(jìn)行讀/ 寫操作;關(guān)閉 Socket。 JBuilder5 介紹JBuilder5 是美國 Borland 公司最新推出的遵循 SUN 公司 J2EE 標(biāo)準(zhǔn)的集成開發(fā)工具,是目前使用最廣泛的 Java 開發(fā)工具之一。JBuilder5 是一組全面的高效率工具,使用 Java 編程語言創(chuàng)建可伸縮的,高性能的和具有不依賴于平臺性能的應(yīng)用程序。JBuilder5 環(huán)境是用純 Java 編寫。 C/S 模型介紹C/S 是 Client/Server 的縮寫,即客戶機(jī)/ 服務(wù)器技術(shù),也可以稱為 C/S 模型。前端被稱為客戶端,后端被稱為服務(wù)器端。2.前端與后端的任務(wù)對計算機(jī)資源有完全不同的要求,這些計算機(jī)資源包括:處理機(jī)速度,內(nèi)存,磁盤速度,容量,輸入輸出設(shè)備等。4.可伸縮性是 C/S 系統(tǒng)的一個很重要特性。在這里,水平伸縮(Horizontal scaling)意味著方便地添加和刪除客戶工作站。C/S 軟件技術(shù)是一種通用的,基于消息的技術(shù)。服務(wù)器 客戶端請求網(wǎng)絡(luò)圖 1 C/S 技術(shù)模型Client/Server 結(jié)構(gòu)的優(yōu)點是速度快, 缺點是當(dāng) Server 進(jìn)行更新時, Client 也必需更新 [6]。通常在服務(wù)器的指定端口被綁定一個 Socket,此時服務(wù)器只是處于等待狀態(tài),監(jiān)聽客戶的連接請求。服務(wù)器客戶端監(jiān)聽端口連接請求圖 2 服務(wù)器監(jiān)聽客戶的連接請求服務(wù)器一旦接收到客戶機(jī)的連接請求,服務(wù)器選擇一個新的端口并綁定一個新的 Socket 與客戶端建立的 Socket 對,這個過程如圖 3 所示。由于 Server 端的輸出流是服務(wù)端的輸入流, Server 端的輸入流是服務(wù)器的輸出流,反之亦然,所以,Client 與 Server 可以通過讀寫各自 Socket 進(jìn)行交流。服務(wù)器使用 ServerSocket 類來處理客戶機(jī)的連接請求。這個新的 Socket 對象將連接到一些新端口,負(fù)責(zé)處理與之相對應(yīng)客戶機(jī)的通信。 [13]客戶機(jī)首先創(chuàng)建一個 Socket 對象,用于和服務(wù)器的通信。 Java 中的線程模型簡介線程是程序中的一個執(zhí)行流。因此,線程被認(rèn)為是以 CPU 為主體的行為。Java 中的線程模型包含三部分。(2)該 CPU 執(zhí)行的代碼。線程模型在 Java 中是由 類進(jìn)行定義和描述的。因此用戶可以通過創(chuàng)建 Thread 的實例或定義并創(chuàng)建 Thread 子類的實例建立和控制自己的線程序 [7]。一經(jīng)推出,就受到了專業(yè)人士的好評,目前已經(jīng)成為 web 數(shù)據(jù)庫系統(tǒng)中較為常用的一個數(shù)據(jù)庫系統(tǒng)。Sql Server 2022 的重要管理工具:1.服務(wù)管理器可以通過服務(wù)管理器啟動、停止、暫停 Sql Server 服務(wù)器的相關(guān)服務(wù)。2.企業(yè)管理器企業(yè)管理器提供了一種圖形化界面來操作數(shù)據(jù)庫對象,在該界面中可以進(jìn)行數(shù)據(jù)庫、表等數(shù)據(jù)對象的創(chuàng)建、查詢、修改、刪除等操作,可以完成 Sql Server 2022 中絕大多數(shù)的管理工作。 Transactsql(又稱為tsql)是 Sql Server 2022 在標(biāo)準(zhǔn)的 SQL 語句上進(jìn)行了擴(kuò)充的語言,是交互式的結(jié)構(gòu)化查詢語言,能夠完成對 Sql Server 2022 數(shù)據(jù)庫的所有操作。在 ASP 中,只要訪問數(shù)據(jù)庫,就必然會使用 SQL 語言。管理員在經(jīng)過登錄界面進(jìn)入管理員界面,即系統(tǒng)的服務(wù)器端并啟動服務(wù)器后。管理員在管理界面中可以隨時關(guān)閉服務(wù)器。用戶只需要在登錄界面中輸入正確的用戶名和密碼即可登錄聊天室并且連接上服務(wù)器。如果用戶已經(jīng)登錄了聊天室,而服務(wù)器還沒有啟動,則用戶是不可以利用聊天室收發(fā)信息的。 系統(tǒng)功能分析 系統(tǒng)的功能需求聊天室程序通常需要完成以下一些基本功能:登錄聊天室;啟動服務(wù)器;關(guān)閉服務(wù)器;用戶之間的聊天;退出聊天室。用戶經(jīng)登錄界面都進(jìn)入聊天大廳。(2)不論是管理員還是用戶都需要在登錄界面輸入正確的用戶名和密碼后才可以登錄到各自的界面中去。首先,管理員進(jìn)入到管理界面后可以方便的啟動/停止服務(wù)器,看到在線用戶的信息和聊天信息。(4)一個用戶退出聊天室對其他用戶不能產(chǎn)生影響,而服務(wù)器斷開與客戶端的連接則所有的用戶都失去與服務(wù)器的連接。(6)服務(wù)器狀態(tài),聊天信息和在線用戶人數(shù)及時刷新。聊天室系統(tǒng)運行穩(wěn)定、安全性高、性能可靠。聊天室系統(tǒng)管理員 管理員用戶 用戶啟/停服務(wù)器發(fā)送信息用戶信息接收信息圖 4 系統(tǒng)頂級數(shù)據(jù)流圖管理員的操作經(jīng)過聊天室系統(tǒng)將反饋給管理員自己和用戶。情況 2:管理員停止服務(wù)器,管理員界面中所有的用戶信息都將不再刷新,而用戶所在聊天界面都將有服務(wù)器停止的提示。用戶的用戶名,聊天信息在管理員界面都可以顯示出來。管理員界面二級數(shù)據(jù)流圖:圖 5 管理員界面二級數(shù)據(jù)流圖我們也可以得到聊天室界面的二級數(shù)據(jù)流圖:圖 6 聊天室界面二級數(shù)據(jù)流圖 系統(tǒng)數(shù)據(jù)分析在仔細(xì)調(diào)查聊天室過程的基礎(chǔ)上,總結(jié)出該系統(tǒng)需要滿足以下系統(tǒng)數(shù)據(jù)的需求:系統(tǒng)管理員資料。用戶信息記錄用戶的資料。聊天室系統(tǒng)總體 ER 圖如圖 7 所示:登錄界面 用戶名,密碼核對聊天室界面發(fā)送聊天信息接收聊天信息查看連接狀態(tài)口令錯誤口令核對口令正確登錄界面 用戶名,密碼核對管理員界面啟動/停止服務(wù)器查看在線用戶人數(shù)查看用戶聊天信息口令核對口令正確口令錯誤客戶 管理員客戶管理聊天 管理圖 7 聊天室系統(tǒng)總體 ER 圖聊天室系統(tǒng)管理員屬性圖如圖 8 所示:管理員 管理員密碼管理員用戶名圖 8 管理員屬性圖聊天室系統(tǒng)客戶個人資料屬性圖如圖 9 所示:客戶用戶名傳真 真實姓名電話密碼地區(qū)圖 9 客戶個人資料屬性圖 系統(tǒng)可行性分析從技術(shù)發(fā)面來看,Java 語言的優(yōu)點主要表現(xiàn)在:簡單、面向?qū)ο?、多線程、安全性等方面。Java 實現(xiàn)了自動的垃圾收集,簡化了內(nèi)存管理的工作。 (2)面向?qū)ο? Java 提供了簡單的類機(jī)制和動態(tài)的構(gòu)架模型。 Java 是一種完全面向?qū)ο蟮某绦蛟O(shè)計語言,它除了數(shù)組、布爾和字符三個基本數(shù)據(jù)類型外的其它類都是對象,它不再支持全局變量。 Java 同樣支持繼承特性,Java 的類可以從其它類中繼承行為,但 Java 只支持類的單重繼承,即每個類只能從一個類中繼承。 (3)多線程 多線程使應(yīng)用程序可以同時進(jìn)行不同的操作,處理不同的事件。 Java 程序可以有多個執(zhí)行線程,如可以讓一個線程進(jìn)行復(fù)雜的計算,而讓另一個線程與用戶進(jìn)行交互,這樣用戶可以在不中斷計算線程的前提下與系統(tǒng)進(jìn)行交互。(4)安全性用于網(wǎng)絡(luò)、分布環(huán)境下的 Java 必須要防止病毒的入侵,Java 不支持指針,一切對內(nèi)存的訪問都必須通過對象的實例變量來實現(xiàn),這樣就防止了程序員使用欺騙手段訪問對象的私有成員,同時也避免了指針操作中容易產(chǎn)生的錯誤。JBuilder5 新增幾個新功能,并對已有的功能進(jìn)行了改造,包括一個單步產(chǎn)品安裝過程,以及自動卸載功能。從自身能力來看,本人在大學(xué)三年級時對 Java 語言進(jìn)行過一個學(xué)期的系統(tǒng)學(xué)習(xí),對 Java 有一定的了解和掌握。 第 4 章 系統(tǒng)設(shè)計系統(tǒng)設(shè)計是本系統(tǒng)開發(fā)的重要階段,它直接影響到目標(biāo)系統(tǒng)的質(zhì)量,是整個開發(fā)工作的核心。系統(tǒng)設(shè)計分為:總體設(shè)計和詳細(xì)設(shè)計。系統(tǒng)設(shè)計遵循的原則是:系統(tǒng)性、適應(yīng)性、穩(wěn)健性、經(jīng)濟(jì)性。其最重要的功能就是實現(xiàn)了聊天信息的快速性,改變了傳統(tǒng)的面對面聊天信息不確定因素多,安全性低的狀況。服務(wù)器客戶代理 客戶端線程用戶名用戶Socket圖 10 聊天室設(shè)計圖 服務(wù)器使用多線程,每個線程對應(yīng)一個客戶端,但線程通過客戶代理同客戶端交流,在客戶代理中有兩個重要信息:一個是用戶名,一個是用戶名對應(yīng)的 Socket。對客戶端來說用戶名是可見的,客戶端提供對用戶名的操作?;?C/S 的 Java 聊天室系統(tǒng)的作用是提供給人們一個平臺進(jìn)行相互交流,在交流的過程中可能出現(xiàn)的情況也是不同的。系統(tǒng)功能模塊圖如圖 11 所示:基于 JAVA 實現(xiàn)聊天室服務(wù)器端 客戶端管理員登錄服務(wù)器管理用戶登錄聊天室啟動,停止服務(wù)器當(dāng)前連接人數(shù)用戶聊天信息 連接服務(wù)器 接收信息 認(rèn)證用戶 連接狀態(tài) 顯示信息 發(fā)送信息圖 11 系統(tǒng)功能模塊圖1.服務(wù)器端模塊介紹:該模塊分為管理員登錄和服務(wù)器管理兩個子模塊。而服務(wù)器管理是指管理員進(jìn)入到服務(wù)器端界面后,對系統(tǒng)的服務(wù)器端所做的一些操作,如啟動、停止服務(wù)器,查看當(dāng)前用戶連接人數(shù),和用戶的聊天信息。首先,用戶登錄是指用戶通過輸入用戶名和密碼進(jìn)入到聊天室中,并且聊天室自動連接上服務(wù)器。 數(shù)據(jù)庫設(shè)計本次數(shù)據(jù)庫開發(fā)工具為 Microsoft SQL Server 2022,具體設(shè)計的表單如下:表 1 用戶信息表字段名 類型 大小 允許空 備注username nvarchar 20 否 用戶名password nvarchar 20 否 密碼Truename nvarchar 10 是 真實姓名country nvarchar 16 是 所屬地區(qū)fav nvarchar 20 是 傳真tel nvarchar 20 是 電話表 2 管理員信息表字段名 類型 大小 允許空 備注username nvarchar 20 否 用戶名password nvarchar 20 否 密碼 系統(tǒng)功能模塊詳細(xì)設(shè)計管理員登錄模塊流程圖如圖 12 所示: 開始輸入用戶名與密碼查詢數(shù)據(jù)庫是否有這條記錄?進(jìn)入管理員界面提示用戶名或密碼錯誤結(jié)束圖 12 管理員登錄模塊流程圖下面對管理員登錄程序流程圖做簡要敘述。系統(tǒng)在收到發(fā)送信息后查詢數(shù)據(jù)庫,如果在數(shù)據(jù)庫中存有相同的信息,則運行管理員界面。服務(wù)器管理模塊流程圖如圖 13 所示:管理員身份驗證管理員界面關(guān)閉服務(wù)器啟動服務(wù)器 查看在線用戶人數(shù)開始結(jié)束提示用戶名或密碼錯誤正確 錯誤查看聊天信息圖 13 服務(wù)器管理模塊流程圖圖 14 用戶登錄模塊流程圖開始輸入用戶名與密碼查詢數(shù)據(jù)庫是否有這條記錄?進(jìn)入聊天室界面提示用戶名或密碼錯誤結(jié)束服務(wù)器端顯示下面對服務(wù)器管理程序流程圖做簡要敘述。在此界面中可以實現(xiàn)對系統(tǒng)服務(wù)器的啟動和關(guān)閉,查看在線用戶人數(shù)和用戶的聊天信息。首先,用戶在登錄界面中輸入用戶名和密碼經(jīng)過系統(tǒng)驗證后進(jìn)入到聊天室中,同時,如果服務(wù)器已經(jīng)啟動,系統(tǒng)自動將聊天室連接上服務(wù)器,用戶可以使用聊天室,并且在服務(wù)器端有用戶登錄的提示。聊天室模塊流程圖如圖 15 所示。在此界面中用戶可以實現(xiàn)向其他用戶發(fā)送信息,接收其他用戶發(fā)送的信息,查看當(dāng)前和服務(wù)器的連接狀態(tài)。 IAddress host=()。 ss=new ServerSocket(intPort)。display(服務(wù)器已啟動!)。}()。if(clientSk!=null){ display(clientSk+join in )。}int i=0。(c)。 }else{(TAKEN)。} i++。}while(i())。intPort=(())。sk=new Socket(ip
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1