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

正文內(nèi)容

畢業(yè)設(shè)計聊天室系統(tǒng)(已修改)

2024-12-19 16:33 本頁面
 

【正文】 Java 課程設(shè)計指導(dǎo)書 (學(xué)生版初稿) 第二章 聊天室系統(tǒng) 目標(biāo) 背景介紹 業(yè)務(wù)背景 技術(shù)背景 需求分析 功能需求分析 業(yè)務(wù)對象分析 驗收測試要求 系統(tǒng)設(shè)計 總體設(shè)計 詳細設(shè)計 系統(tǒng)實現(xiàn) 小結(jié) 展望 第二章 聊天室系統(tǒng) 學(xué)習(xí) 目標(biāo): 理解 基于網(wǎng)絡(luò)的 C/S 模式的軟件系統(tǒng)結(jié)構(gòu),掌握網(wǎng)絡(luò)編程的基本概念 。 了解 Java 的多線程機制,掌握 Java 多線程技術(shù)的應(yīng)用 。 熟練掌握基于 TCP協(xié)議的 Socket 編程 。 了解 Socket 編程的協(xié)議約定 ,掌握簡單應(yīng)用協(xié)議的開發(fā) 。 進一步鞏固發(fā)展團隊協(xié)作能力。 學(xué)習(xí)寄語 :想必大家都用過 ,其主要功能就是聊天,是不是很想知道它是如何實現(xiàn)的?本項目就是幫你實現(xiàn)一個簡單的聊天系統(tǒng), 當(dāng)然跟 商業(yè)項目 沒法比,但從中你卻可以了解這些系統(tǒng)是如何實現(xiàn)的,學(xué)到開發(fā)類似系統(tǒng)的基礎(chǔ)知識和 基本 技能 (基本并不意味不實用) 。本章的內(nèi)容有一定難度 (多線程、基于 TCP 的應(yīng)用協(xié)議編程) ,所以系統(tǒng)的開發(fā)采用了“增量迭代” 的 開發(fā)方式 , 由簡易到繁難,希望你能 順利前行 。 我們的信 念依然 是:“不拋棄,不放棄”。你的改變和收獲 依然 是老師真誠的期待 ,期待你更踏實、更自信 。 Come on! 背景介紹 業(yè)務(wù)背景 隨著網(wǎng)絡(luò)社會的不斷發(fā)展,具有相同興趣的網(wǎng)民 需要 互相 遠程交流 , 既要能省錢又要能即時交互 ,電話太貴、 又嫌慢, 所以開發(fā)一個類似 的及時通訊系統(tǒng)就變得非常有意義了 。“ Happy Chat” 聊天系統(tǒng)應(yīng)運而生 ,它較之 的唯一好處是自主開發(fā),用的放心 ,更適合在局域網(wǎng)內(nèi)使用 。 它提供的功能遠不如 豐富,但應(yīng)具有如下 功能:( 1)與聊天室成員一起聊天;( 2)可以與聊天室成員私聊;( 3)用戶注冊、登錄;( 4)服務(wù)器監(jiān)控聊天內(nèi)容;( 5)服務(wù)器發(fā)送通知;( 6)服務(wù)器踢人;( 7)保存服務(wù)器日志。( 8)保存用戶聊天信息。 技術(shù)背景 本系統(tǒng)要求使用 java 技術(shù)開發(fā),使用文件保存數(shù)據(jù),集成開發(fā)環(huán)境使用eclipse。開發(fā)者應(yīng)有 java 程序設(shè)計語言、 SWING 基本 GUI組件、多線程、文件使用 、 socket 編程、使用 eclipse 的基本知識和技能。系統(tǒng)采用兩層 C/S 體系結(jié)構(gòu), C 端負(fù)責(zé)通過 GUI 與 客戶交互,實現(xiàn)注冊、登陸、 收發(fā)信息、退出等功能; S端是 聊天系統(tǒng)的應(yīng)用服務(wù)器, 主要有處理 用戶注冊、登錄、用戶收發(fā)信息、用戶退出等功能。 C 端和 S端是通過網(wǎng)絡(luò)交互的,其基本原理如圖 1所示: 圖 1 C/S通訊基本原理圖 首先服務(wù)器啟動,它會建立一個專門用于接收客戶端連接請求的“傾聽Socket” (相當(dāng)于總服務(wù)臺 ,有固定的 IP 地址和端口號 ) ,然后等待客戶的連接請求。 當(dāng)用戶 想 聊天時, 從界面輸入信息, 然后與服務(wù)器建立 Socket 連接 (連接時應(yīng)指定服務(wù)器的 IP 地址和端口號,而客戶端 socket 的端口由本方操作系統(tǒng) 從空閑端口中 確定) , 服務(wù)器 端的 “傾聽 Socket” 收到連接請求后,一般會接受連接請求,并生成一個服務(wù)端 socket(其端口號由服務(wù)端操作系統(tǒng) 從空閑端口中 確定), 專門負(fù)責(zé)與此客戶端 socket 的通信。 一旦連接請求成功,客戶端 將信息 及請求 通過 本方 socket 的輸出流發(fā)送給服務(wù)器端 相應(yīng)的 socket, 服務(wù)端 則 通過服務(wù)器端 Socket 的輸入流 接受 客戶端傳輸過來的信息 及請求 , 分析是何請求, 然后 根據(jù)請求類型,進行相應(yīng)的處理 (如登錄、轉(zhuǎn)發(fā)信息等) 。 服務(wù)方也可以根據(jù)需要,通過 socket 的輸出流發(fā)信息和請求給客戶端 (公告) 。 客戶方和服務(wù)方都可以通過 關(guān)閉本方的 socket 而結(jié)束一次通訊過程。 不難發(fā)現(xiàn)服務(wù) 器 需要 能 同時接受多個客戶的請求 ,為了實現(xiàn)這一點,一般使用多線程機制來處理,對每一個客戶端連接通訊,服務(wù)器端都有一個線程專門負(fù)責(zé)處理(相當(dāng)于一個服務(wù)員 專門 服務(wù)一個以 IP 地址和端口號唯一標(biāo)識的客戶)。 上述方式兩個聊天者之間通信必須通過服務(wù)器進行轉(zhuǎn)發(fā), 聊天者多時,顯然服務(wù)器是個性能瓶頸。能不能聊天者之間直接通信?當(dāng)然可以,這是所謂的 P2P聊天室,缺點是對聊天者缺乏集中監(jiān)管的手段。也有界于二者之間的,即有一服務(wù)器,接受注冊和登錄,實際聊天雙方通信時,仍然是直 接通信,此時服務(wù)器相當(dāng)于一個婚姻介紹所,只管牽線搭橋,具體談還是聊天者自己的事。 本文主要采用聊天信息通過服務(wù)器轉(zhuǎn)發(fā)的方式,而且只支持一個聊天室。因為其他典型系統(tǒng)如電子郵件系統(tǒng), FTP 系統(tǒng)均采用 類似 結(jié)構(gòu), WEB 服務(wù)系統(tǒng)本質(zhì)上也是 C/S 系統(tǒng),只不過其客戶端是瀏覽器,采用了 HTTP 通信協(xié)議和 HTML,所以變成了 B/S 結(jié)構(gòu), 可以認(rèn)為是 C/S 的一個具體應(yīng)用, 其機理是相似的。 需求分析 功能需求分析 系統(tǒng)的主要功能已在業(yè)務(wù)分析中有所介紹,在這里需要對每個功能從使用者角度作較為具體的分析。很明顯, 整個系統(tǒng)的功能可以自然地分為客戶端和服務(wù)器端。 以下是 主要 用例描述 一 客戶端 1 . 注冊 ( 1)客戶啟動程序,顯示出登陸界面 ( 2) 客戶選擇其中的注冊按鈕,系統(tǒng)顯示注冊界面 ( 3)客戶填寫 用戶名、密碼、確認(rèn)密碼、性別、年齡、電子郵件,按確定按鈕 ( 4)系統(tǒng)驗證密碼和確認(rèn)密碼是否相符、用戶名(不能重復(fù))、電子郵件格式、年齡(大于 10小于 100) ( 5)系統(tǒng) 發(fā)送 上述 信息 及“注冊請求” 到服務(wù)端, 等待 服務(wù)端 返回“注冊成功 ” 消息 ( 6) 系統(tǒng) 提示注冊成功 ( 7)系統(tǒng)返回登陸界面 若驗證失敗,提示“ 重新輸入” 若 服務(wù)端 返回“ 注冊失敗 ” ,提示“注冊失敗” 若服務(wù)端返回“注冊失敗 用戶名重名”,則 提示“ 注冊失敗 用戶重名”。 2. 登錄 ( 1)客戶啟動程序,顯示出登陸界面 ( 2)客戶填寫用戶名、密碼,服務(wù)器 IP 地址,按登陸按鈕 ( 3)系統(tǒng)驗證用戶名、密碼 ,不能為空、密碼字符長度為 610 ( 4)系統(tǒng)發(fā)送用戶名、密碼及“登陸請求”到服務(wù)端,等待服務(wù)端返回“登錄 成功”消息 ( 5) 若成功 系統(tǒng)顯示客戶端主界面 (收發(fā)消息界面) 若用戶名、密碼驗證失敗,系統(tǒng)提示;“用戶名或密碼錯”,重復(fù) 3 次若仍不能通過驗證則 客戶端程序退出。 若服務(wù) 端返回“登錄失敗”,系統(tǒng)提示“用戶名或密碼錯”。 3. 發(fā)送信息 ( 1)在客戶端主界面,用戶輸入消息,選擇是群發(fā)還是私聊,若是私聊還要選擇對方用戶名,按發(fā)送按鈕 ( 2)系統(tǒng)驗證消息長度 , 私聊要求目的方用戶名非空。 ( 3)系統(tǒng)發(fā)送信息 及“ 接收 消息 請求” 到 服務(wù)器端 ,等待服務(wù)端返回 “接收成功” 消息 (等待返回消息可?。?。 ( 4)系統(tǒng)提示信息已發(fā)送 若發(fā)送不成功,則系統(tǒng)提示“發(fā)送失敗”。 4. 接收 信息 ( 1) 客戶端系統(tǒng)啟動,進入主界面后, 會顯示消息接收框 ( 2) 其他 客戶 或 服務(wù)端 系統(tǒng)本身 發(fā)送消息 過來 , 系統(tǒng)接收,分析 確認(rèn)是 ” 接收 消息請求“,則分析提取出消息 (3) 在 消息接收 框逐條顯示發(fā)送者姓名、發(fā)送的消息。 5 退出 ( 1)用戶請求退出,按退出按鈕 ( 2)系統(tǒng)確認(rèn)用戶退出(對話框) ( 3)系統(tǒng)發(fā)“退出請求”到服務(wù)端 ,等待服務(wù)端返回“退出成功” (等待返回消息可?。? ( 4) 客戶端系統(tǒng) 關(guān)閉連接,程序 退出 二 服務(wù)器端 1. 用戶注冊 ( 1)系統(tǒng)啟動后, 等待客戶 請求 ( 2)客戶請求到,接受請求,分析確認(rèn)是 “ 注冊請求 ” ( 3)系統(tǒng)讀取 信息,分析并再次驗證用戶名、密碼、確認(rèn)密碼、性別、年齡、電子郵件。 ( 4)系統(tǒng) 根據(jù)用戶名,在已有客戶記錄中查詢,確認(rèn)沒有重名 ( 5)系統(tǒng)將用戶名、密碼、確認(rèn)密碼、性別、年齡、電子郵件信息保存 ( 6)系統(tǒng)向客戶 端發(fā)送 “注冊成功”消息 ( 7)系統(tǒng)在監(jiān)控界面上寫信息: xx客戶名 已注冊 注冊時間 若重名,向客戶端發(fā)“注冊重名”消息 若注冊失敗,向客戶端發(fā)“注冊失敗”消息 2. 用戶登錄 ( 1)系統(tǒng)啟動后,等待客戶請求 ( 2)客戶請求到,接受請求,分析確認(rèn)是“登錄請求” ( 3)系統(tǒng)讀取信息,驗證用戶名、密碼 是否存在 ( 4)系統(tǒng) 驗證是否已經(jīng)登錄 ( 5)系統(tǒng)驗證用戶是否已超過最大用戶數(shù) ( 6) 系統(tǒng) 將客戶加入聊天室 ,通知其它客戶“新用戶加入” ( 7)系統(tǒng)向客戶端發(fā)送“ 登錄 成功”消息 ( 8)系統(tǒng)在監(jiān)控界面上寫信息:客戶名 : 已登錄 登錄時間 若驗證失敗,向客戶端發(fā)“驗證失敗”消息 3. 發(fā)送信息 (用于管理員向聊天者發(fā)送 公告 信息 ) ( 1)系統(tǒng)啟動后,等待 管理員 請求 ( 2) 管理員在監(jiān)控界面輸入消息,確定發(fā)送類型(群發(fā)還是私聊),若私聊還需指定目的用戶名,按發(fā)送按鈕 ( 3)系統(tǒng)讀取信息,分析并 確認(rèn)是群發(fā)還是私聊 ( 4) 若是群發(fā),則將信息發(fā)給聊天室內(nèi)其它所有用戶 ;若是私聊,則將消息發(fā)給指定的用戶。 ( 5)系 統(tǒng)在監(jiān)控界面上寫信息: 管理員 〉消息 若 出現(xiàn)異常 , 提示 “ 發(fā)送 失敗” 。 4 接收 信息 ( 1)系統(tǒng)啟動后,等待客戶請求 ( 2)客戶請求到,接受請求,分析確認(rèn)是“接收信息請求” ( 3)系統(tǒng)讀取信息
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1