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

正文內容

基于java即時聊天系統(tǒng)的設計與實現(xiàn)-畢業(yè)論文(編輯修改稿)

2025-03-12 06:27 本頁面
 

【文章內容簡介】 送應答信號。 (4)返回第二步,等待另一客戶請求。 (5)關閉該服務器。 客戶端: (1)打開一個通信通道,并連接到服務器所在主機的特定端口。 (2)向服務器發(fā)送服務請求報文,等待并接收應答;繼續(xù)提出請求。 (3)請求結束后關閉通信通道并終止。 分布運算和分布管理是客戶機 /服務器模式的特點。最后選擇了 C/S 模式。 3 系統(tǒng)需求分析 前面兩章介紹了課題 的選題背景和相關的技術基礎和協(xié)議。在本章中將討論一下即時通訊系統(tǒng)的需求分析。 可行性分析 經(jīng)濟可行性 :由于本系統(tǒng)的主要背景是畢業(yè)課程設計,不注重直接的經(jīng)濟效益和其后的發(fā)展方向,只在注重自身水平和能力的提高,對自身的經(jīng)濟要求也不高,只要有一臺能運行 Java 軟件的電腦便可,所以不用考慮到經(jīng)濟問題。 技術可行性 : 本系統(tǒng)的開發(fā)利用 Microsoft SQL Server2021 作為本系統(tǒng)的數(shù)據(jù)庫 ,它是一個支持多用戶的新型數(shù)據(jù)庫 ,適用于大中規(guī)模的數(shù)據(jù)量需求。學校校園網(wǎng)的建設也為新系統(tǒng)服務器 /客戶端的結構提 供了硬件的支持。使用 Java 作為系統(tǒng)開發(fā)的開發(fā)環(huán)境 ,它提供完善的指令控制語句、類與對象的支持及豐富的數(shù)據(jù)類型 ,給開發(fā)高性能系統(tǒng)提供的保障為開發(fā)滿足客戶要求的系統(tǒng) ,保證了代碼的模塊化要求 ,而代碼模塊化的提高 ,非常有利于以后對新系統(tǒng)的擴展與修改。 運行可行性 : 本系統(tǒng)為一個小型的局域網(wǎng)聊天系統(tǒng) ,所耗費的資源非常的小 ,現(xiàn)在一般的電腦無論是硬件還是軟件都能夠滿足條件 ,因此 ,本系統(tǒng)在運行上是可行的。 綜上所述 ,本系統(tǒng)的設計與開發(fā)在技術上和硬件設備上的條件都是滿足的 ,因此 ,它在技術上是可行的。 系統(tǒng)功能需 求 9 本系統(tǒng)主要通過客戶端,服務器端來體現(xiàn)聊天系統(tǒng)的基本功能。 ( 1)服務器端 ,服務器監(jiān)控聊天內容,服務器過濾非法內容 6. 服務器踢人。 7. 保存服務器日志 . 。 (2)客戶端 界面及結果 即時消息的安全需求 A 發(fā)送即時消息 M 給 B,有以下幾種情況和相關需求: (1)如果無法發(fā)送, A 必須接到確認; (2)如果 M 被投遞了, B 只能接受 M 一次; (3)協(xié)議必須為 B 提供方法檢查 A 發(fā)送了這條信息; (4)協(xié)議必須允許 B 使用另一條即時信息,回復信息; (5)協(xié)議必須為 A 提供方法保證沒有其他個體 C 可以篡改 M; 即時信息加密和鑒別 (1)協(xié)議必須提供方法保證通知和即時消息的置信度,未被監(jiān)聽或者破壞; (2)協(xié)議必須提供方法保證通知和即時消息的置信度,未被重排序或者回放; (3)協(xié)議 必須提供方法保證通知和即時消息被正確的實體閱讀; (4)協(xié)議必須允許客戶自己使用方法確保信息的不被截獲,不被重放和解密。 即時通訊系統(tǒng)需求 注冊需求 (1)即時通訊系統(tǒng)擁有多個賬戶,允許多個用戶注冊; 10 (2)一個用戶可以注冊多個 ID; (3)注冊所使用的帳號類型為字母 ID。 通訊需求 (1)用戶可以傳輸文本消息; (2)用戶可以傳輸 RTF 格式消息; (3)用戶可以加密 /解密消息等。 4 系統(tǒng) 設計 在這里我們將該即時通訊系統(tǒng)命名為 CHAT,現(xiàn)在對該系統(tǒng)進行總體設計。采用客戶機 /服務器( C/S)的模式來設計,是一個 2 層的 C/S 結構:應用程序服務器 → 應用程序客戶端,其分層機構如圖 1 所示 。 圖 1 2 層 C/S 結構示意圖 客戶層也叫做應用表示層,也就是我們說的客戶端,這是應用程序的用戶接口部分。給即時通訊工具設計一個客戶層具有很多優(yōu)點,這是因為客戶層擔負著用戶與應用間的對話功能。它用于檢查用戶的輸入數(shù)據(jù),顯示應用的輸出數(shù)據(jù)。為了使用戶能直接地進行操作,客戶層需要使用圖形用戶接口。若通訊用戶變更,系統(tǒng)只需要改寫顯示控制和數(shù)據(jù)檢查程序就可以了,而不會影響其他兩層。 服務層又叫 做功能層,相當于應用的本體,它是將具體的業(yè)務處理邏輯編入程序中。例如,用戶需要檢查數(shù)據(jù),系統(tǒng)設法將有關檢索要求的信息一次性地傳送給功能層;而用戶登錄后,聊天登錄信息是由功能層處理過的檢索結果數(shù)據(jù),它也是一次性傳送給表示層的。在應用設計中,必須避免在表示層和功能層之間進行多次的數(shù)據(jù)交換,這就需要盡可能進行一次性的業(yè)務處理,達到優(yōu)化整體設計的目的。 即時聊天系統(tǒng)的實施原理 工作方式和技術原理 典型的 IM 工作方式如下:登陸 CHAT 通訊服務器,獲取一個自建立的歷史的交11 流對象列表(同事列表),然后自 身標志為在線狀態(tài),當好友列表中的某人在任何時候登錄上線并試圖通過你的計算機聯(lián)系你時, IM 系統(tǒng)會發(fā)一個消息提醒你,然后你能與他建立一個聊天會話通道進行各種消息如鍵入文字、通過語音等的交流,從技術上來說,聊天系統(tǒng)的基本技術原理如下: 第一步,用戶 A 輸入自己的用戶名和密碼登錄 IM 服務器,服務器通過讀取用戶數(shù)據(jù)庫來驗證用戶身份,如果驗證通過,登記用戶 A 的 IP 地址、 IM 客戶端軟件的版本號及使用的 TCP/UDP 端口號,然后返回用戶 A 登錄成功的標志,此時用戶 A 在 IM系統(tǒng)中的狀態(tài)為在線( Online Presence)。 第二步,根據(jù)用戶 A 存儲在 IM 服務器上的好友列表( Buddy List),服務器將用戶 A 在線的相關信息發(fā)送給也同時在線的 IM 好友的 PC 機,這些信息包括在線狀態(tài)、IP 地址、 IM 客戶端使用的 TCP 端口( Port)號等, IM 好友的客戶端收到此信息后將在予以提示。 第三步是 IM 服務器把用戶 A 存儲在服務器上的好友列表及相關信息回送到他的客戶端機,這些信息包括也在線狀態(tài)、 IP 地址、 IM 客戶端使用的 TCP 端口( Port)號等信息,用戶 A 的 IM 客戶端收到后將顯示這些好友列表及其在線狀態(tài)。 通訊方式 (1)在線直接 通訊 如果用戶 A 想與他的在線好友用戶 B 聊天,他將直接通過服務器發(fā)送過來的用戶B 的 IP 地址、 TCP 端口號等信息,直接向用戶 B 的 PC 機發(fā)出聊天信息,用戶 B 的 IM客戶端軟件收到后顯示在屏幕上,然后用戶 B 再直接回復到用戶 A 的 PC 機,這樣雙方的即時文字消息就不再 IM 服務器中轉,而是直接通過網(wǎng)絡進行點對點的通訊,即對等通訊方式( Peer To Peer)。 【 5】 (2)在線代理通訊 用戶 A 與用戶 B 的點對點通訊由于防火墻、網(wǎng)絡速度等原因難以建立或者速度很慢, IM 服務器將會主動提供消息中轉服務,即用戶 A 和用戶 B 的即時消息全 部先發(fā)送到 IM 服務器,再由服務器轉發(fā)給對方。 軟件設計流程 因為該系統(tǒng)其需求是十分明確的,所以該系統(tǒng)的開發(fā)流程采用瀑布模型進行設計,分為幾大步驟:先進行需求分析, 再 是 系統(tǒng) 設計,然后是詳細設計與編碼,其次是軟件的測試,最后是軟件的運行和維護。 【 6】 在實際過程中這些步驟經(jīng)常是重疊和彼此間有信息交換,它不是一個簡單線性過程,而是包括開發(fā)步驟的多個反復。如圖 2 所示。 12 圖 2 即時通訊系統(tǒng)開發(fā)流程圖 功能模塊劃分 該即時聊天工具按如下 過程完成通信: (1)客戶向服務器注冊,告知服務器該客戶監(jiān)聽某主題; (2)客戶注冊之后,向服務器發(fā)送消息; (3)服務器再把消息發(fā)送給所有監(jiān)聽此主題的客戶。 根據(jù)以上描述,該系統(tǒng)功能模塊圖請見圖 3。 圖 3 通訊系統(tǒng)的功能模塊 服務器端 由圖 3 可知服務器端完成至少 3 大功能:建立連接、存儲數(shù)據(jù)和監(jiān)聽客戶。這 3大功能的具體含義如下: (1)建立一個 ServerSocket 連接,不斷偵聽是否有客戶端連接或者斷開連接。 (2)服務器 端是一個信息發(fā)送中心,所有客戶端的信息都傳到服務器端,再由服務器根據(jù)要求分發(fā)出去。 (3)數(shù)據(jù)庫數(shù)據(jù)操作包括 將 用戶信息存儲到數(shù)據(jù)庫等。 客戶端 即時聊天系統(tǒng) 服務器端 客戶端 建立連接 存儲數(shù)據(jù) 監(jiān)聽用戶 新建用戶 登 錄 通訊交流 需求分析 系統(tǒng)設計 詳細設計與編碼 軟件測試 軟件運行與維護 13 客戶端要完成 4 大功能:新建立用戶、用戶登錄、通信交流。這些功能的含義如下: (1)新建立用戶:客戶端與服務器端建立通信信道,向服務器端發(fā)送新建用戶的信息,接收來自服務器的信息進行注冊。 (2)用戶登錄:客戶端與服務器端建立通信信道,向服務器端發(fā)送信息,完成用戶登錄。 (3)通信交流:客戶端可完成的信息的編輯、發(fā)送和接收等功能。 數(shù)據(jù)庫概要設計 因為本系統(tǒng)采用的是 2 級 C/S 結構模式,所以,為了減少服務器的存儲量,方便程序設計,本系統(tǒng)只對用戶信息進行存儲。利用 JAVA 中的框架技術進行存儲。在中,各表的映射文件可以通過工具生成,在本系統(tǒng)中,用戶表信息可以用 Xml 代碼 實現(xiàn)。 用戶表 (user) 表 1 用戶信息表 名稱 字段名稱 類別 主鍵 非空 用戶編號 id 數(shù)字 是 是 登錄名 CustName 文本 否 是 登錄密碼 CustPassword 文本 否 是 年齡 Age 文本 否 是 性別 Sex 文本 否 是 電子郵箱 文 本 否 是 5 詳細設計 服務器端的設計與實現(xiàn) 作為 C/S 模式下的系統(tǒng)開發(fā),很顯然服務器端程序的設計是非常重要的。下面就服務器端的相關程序模塊進行設計,并一定程度上實現(xiàn)了相關功能。 主服務器類的設計 設計服務器時需要考慮如下幾個因素: (1)服務器的運行速度; (2)服務器的響應速度,包括新建連接和發(fā)送數(shù)據(jù)的響應速度; (3)I/O 吞吐量; (4)其他:流量控制( QoS)、安全性。 針對 TCP/IP 協(xié)議的數(shù)據(jù)結構,設計服務器的程序結構需要考慮以下的因素: 14 (1)多線程; (2)多進程 ; (3)單線程。 主服務器類實現(xiàn)了服務器端的多線程,使用 SeverSocket s=newServ
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1