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

正文內(nèi)容

基于java聊天室的設(shè)計與實現(xiàn)畢業(yè)設(shè)計報告(編輯修改稿)

2024-12-29 16:07 本頁面
 

【文章內(nèi)容簡介】 的實現(xiàn)機制。 Java 語言支持 Inter 應(yīng)用的開發(fā),在基本的 Java 應(yīng)用編程接口中有一個網(wǎng)絡(luò)應(yīng)用編程接口,它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫,包括 URL、URLConnection、 Socket(實現(xiàn)客戶端的套接 字)、 ServerSocket(實現(xiàn)服務(wù)器端的套接字)等。 Java 的強制型機制、異常處理、廢料的自動收集等都是 Java 程序健壯性的重要保證。 Java 通常被用在網(wǎng)絡(luò)環(huán)境中,為此, Java 提供了一個安全機制以防惡意代碼的攻擊。 Java 語言的優(yōu)良特性使得 Java 應(yīng)用具有無比的健壯性和可靠性,這也減少了應(yīng)用系統(tǒng)的維護費用。 Java 對對象技術(shù)的全面支持和 Java 平臺內(nèi)嵌的 API 能縮短應(yīng)用系統(tǒng)的開發(fā)時間并降低成本。 Java 編譯一次,處處可運行的特性使得它能夠提供一個隨處可用的開放結(jié)構(gòu)和在多平臺之間傳遞信息的低成本方式 。 豐富的類庫為 Java 提供了大量的類以滿足網(wǎng)絡(luò)化、多線程、面向?qū)ο笙到y(tǒng)的需要。同時 Java 程序可以獲取網(wǎng)絡(luò)上節(jié)點的圖像、聲音、 HTML 文檔及文本資源。 Java 架構(gòu)設(shè)計 從技術(shù)角度來說, 軟件架構(gòu)隨著技術(shù)的革新不斷地更新其內(nèi)容,軟件架構(gòu)建立于當(dāng)前技術(shù)和一些基本原則的基礎(chǔ)之上。架構(gòu)的一些基本原則 : 分層 化 原則:分層是為了降低軟件深度復(fù)雜性而使用的關(guān)鍵思想,就像社會有了階級一樣,軟件有了層次結(jié)構(gòu)。 模塊化原則:模塊化是化解軟件廣度復(fù)雜的必然手段,模塊化的目的就是讓軟件分工。 接口分離原則 : 隨著軟件 模塊化的不斷深入改進,面向接口編程而不是面向?qū)崿F(xiàn)編 基于 java 聊天室的設(shè)計與實現(xiàn) 5 程可以讓復(fù)雜度日趨增高的軟件降低模塊之間的耦合度,從而讓各模塊更輕松改進。 依賴倒置原則 : 隨著軟件結(jié)構(gòu)的進一步發(fā)展 ,層與層之間、模塊與模塊之間的依賴逐漸加深,而層、模塊的動態(tài)可插拔要求不端增大。 當(dāng)前最典型的三層次架構(gòu)就架構(gòu)在以上幾項原則的基礎(chǔ)之上,用數(shù)據(jù)庫作存儲層、用面向?qū)ο髞韺崿F(xiàn)業(yè)務(wù)層、用 web 作為用戶接口層。這種三層次架構(gòu)同樣應(yīng)用于此次系統(tǒng)的設(shè)計。 本課題開發(fā)環(huán)境的選擇 在進行開發(fā)之前 ,首先決定的第一個問題就是 ,該使用什么開發(fā)環(huán)境來編寫該系統(tǒng) ?以目前常用的開發(fā)語言來講有 C/C++、 .NET 技術(shù), JAVA、 Visual Basic 幾種。還有 Eclipse,、Borland JBuilder 等,這些并不是程序語言,而是程序語言在建構(gòu)程序時的“集成開發(fā)工具”,不過它們在開發(fā)設(shè)計的過程中也占有相當(dāng)重要的角色,因為選用正確的集成開發(fā)工具,可以加速程序設(shè)計的進行、測試與排錯,因而對整體進度具有決定性的影響。 基于以下幾點,選擇 JAVA 語言開發(fā)技術(shù)。 1) 就執(zhí)行平臺而言,必須考慮的問題之一是用戶可能使用的操作系統(tǒng)。用戶可能使用的是 Windows Linux。 JAVA 語言具有平臺無關(guān)性,可以不需要任何修改就可以運行在支持 JAVA 的任何計算機上。 2) JAVA 的 Swing 組件開發(fā)技術(shù)可以開發(fā)豐富的圖形界面,并且 Swing API 類提供了豐富的外部接口和方法,可以方便實現(xiàn)系統(tǒng)功能。 3) 就項目開發(fā)而言,純粹的面向?qū)ο?,加上?shù)量巨大的類所提供的方法(函數(shù))庫的支持,使得利用 Java 開發(fā)各種應(yīng)用程序,可以說是易如反掌。此外,在程序除錯、修改、升級和增加新功能等方面,因其面向?qū)ο蟮奶匦?,使得這些維護也變得非常容易。 4) Java 支持內(nèi)在的多線程運行,提供分布式的并發(fā)機制,運行效率高 。 5) 異常處理,為了使 Java 程式更穩(wěn)定、更安全, Java 引入了異常處理機制。能夠在程序中產(chǎn)生異常情況的地方,執(zhí)行相對應(yīng)的處理,不至于因突發(fā)或意外的錯誤造成執(zhí)行中斷或是死機。通過這種異常處理,不僅能夠清晰地掌握整個程序執(zhí)行的流程,也使得程序的設(shè)計更為嚴謹。 6) 高性能, Java 可以在運行時直接將目標(biāo)代碼翻譯成機器指令。 Sun 用直接解釋器一秒鐘內(nèi)可調(diào)用 300,000 個過程。翻譯目標(biāo)代碼的速度與 C/C++的性能沒什么區(qū)別。 7) 網(wǎng)絡(luò)功能, Java 可以說是借助因特網(wǎng)而重獲新生的,自然具備編寫網(wǎng)絡(luò)功能的程序。不論是一般因特網(wǎng) /局域網(wǎng)的程序,如 Socket、 Email、基于 Web 服務(wù)器的 Servlet、JSP 程序,甚至連分布式網(wǎng)絡(luò)程序,如 CORBA、 RMI 等的支持也是非常豐富的,使用起來也很方便。 8) 源回收處理 ,Garbage Collection 是由 JVM 對內(nèi)存實行動態(tài)管理的。程序需要多少內(nèi)存、哪些程序的內(nèi)存已經(jīng)不使用了,需要釋放歸還給系統(tǒng),這些煩瑣 危險的操作全3 系統(tǒng)開發(fā)環(huán)境與工具的選擇 6 部交由 JVM 去管理。讓我們能夠更專心地編寫程序,而不需要擔(dān)心內(nèi)存的問題。內(nèi)存的統(tǒng)一管理,對于跨平臺也有相當(dāng)大的幫助。 本課題開發(fā)工具的選擇 Java 的開發(fā)工具很多 ,而且各有優(yōu)缺點, Eclipse 是一個開放可擴展的集成開發(fā)環(huán)境(IDE)。它不僅可以用于 Java 的開發(fā),通過開發(fā)插件,它可以構(gòu)建其他的開發(fā)工具。 Eclipse是開放源代碼的項目,并可以免費下載。支持最新的 Java 標(biāo)準(zhǔn),并且縮短了開發(fā)周期。一直以其友好的集成開發(fā)環(huán)境在業(yè)界受到廣泛的贊譽,這也是 Eclipse 一直是廣大程序員最喜愛的 Java 開發(fā)工具的原因之一。 Eclipse 的可視化集成開發(fā)環(huán)境包括文本編輯器、工程創(chuàng)建工具、對象瀏覽器和調(diào)試器等。用戶可以在集成開發(fā)環(huán)境中創(chuàng)建工程和打開工程,建立、打開和編輯文件, 并可以編譯、運行和調(diào)試應(yīng)用程序??梢哉f在 Eclipse 集成開發(fā)環(huán)境中開發(fā) Java 程序,快速而且高效。其主要特點如下: 1) 開放的可擴展的 IDE 2) 成功的底層圖形界面 API 3) 強大的插件加載功能 4) 可以通過導(dǎo)入一些 CVS 相關(guān)的插件來實現(xiàn)版本管理的便易性 本課題開發(fā)技術(shù)的選擇 本課題選擇了 java Socket 技術(shù)開發(fā)網(wǎng)絡(luò)聊天室。什么是 socket? socket 是一種用于表達兩臺機器之間連接“終端”的軟件抽象。對于一個給定的連接,在每臺機器上都有一個 socket,你可以想象一個虛擬的 電纜 工作在兩臺機器之間 ,“電纜”插在兩臺機器的 socket 上。當(dāng)然,物理硬件和兩臺機器之間的“電纜”這些連接 裝置都是未知的,抽象的所有目的就是為了讓我們不必了解更多的細節(jié)。 簡單的說,一臺計算機上的 socket同另一臺計算機通話創(chuàng)建一個通信信道,程序員可以用這個信道在兩臺機器之間發(fā)送數(shù)據(jù)。當(dāng)你發(fā)送數(shù)據(jù) TCP/IP 協(xié)議棧的每一層都給你的數(shù)據(jù)里添加適當(dāng)?shù)膱箢^。有個好消息是 java 語言隱藏了所有這些細節(jié),這也是為什么他們有時被叫做“流 socket”。思考一下 socket 像電話聽筒一樣在電話的任意一端--你和我通過一個專門的信道來進行通話 和接聽。會話將一直進行下去直到我們決定掛斷電話(除非我們使 用蜂窩電話),除非我們掛斷電話,否則我們各自的電話線路都會占線。 如果你需要在兩臺機器之間進行通訊而不使用高級機制像 ORBs(以及 CORBA, RMI, IIOP 等等), socket 比較適合你。Socket 的底層機制則相當(dāng)棘手。 基于 java 聊天室的設(shè)計與實現(xiàn) 7 4 需求分析 以往聊天室系統(tǒng)的缺陷 通過對以往聊天室的研究及分析,發(fā)現(xiàn)聊天室系統(tǒng)存在以下問題: 1)以往聊天室只能看到用戶 ID 而不能看到用戶的個人形象,包括個人頭像和個人服裝 SHOW。 2)不能輕易分辨出自己談話和別人的 談話。 3)用戶聊天只有單純的文字表達,不能通過豐富的表情和圖片來增添聊天的樂趣。 4)聊天背景只有單純的白色,沒有任何可供選擇的背景顏色和畫面,使整個聊天環(huán)境顯的呆板。 聊天室系統(tǒng)作為網(wǎng)絡(luò)通訊工具的作用 聊天室是提供給網(wǎng)民一個交友與娛樂的場所,在聊天室里網(wǎng)民可選擇 自己 的聊天對象,與其進行對話交流,是網(wǎng)民之間相互溝通、交流情感的最佳方式之一。 用戶可以通過網(wǎng)絡(luò)在線與距離遙遠的其他一位或多位用戶進行信息交流。 在聊天室里網(wǎng)民可選擇自己的聊天對象,進行對話交流。既可以一對一,又可以一對多,還可以形成小組進行多對多討論 ,方便網(wǎng)民在線私聊與群聊。是現(xiàn)行網(wǎng)絡(luò)最流行、最被廣泛應(yīng)用的通訊工具 。 現(xiàn)行聊天室系統(tǒng) 的功能需求 聊天室系統(tǒng)雖然滿足了人們的在線通訊,但是隨著聊天室被廣泛應(yīng)用,人們對于聊天的要求也越來越高,單純的聊天已不能滿足人們的需要,人們更需要多功能的聊天室系統(tǒng),來豐富聊天環(huán)境。 聊天室系統(tǒng)功能具體需求包括: 1) 一個聊天室里所有的人都可以互相密談。 2) 可以通過用鼠標(biāo)點擊頁面上出現(xiàn)的或者人名列表的人名來選擇人名。 3) 可以使用顏色來輕易分辨出別人的談話和自己的談話。 4) 可以察看進入房間以后的所有聊天紀錄。 5) 可以通過 貼圖在您聊天中加入卡通圖片,使聊天內(nèi)容豐富多采,充滿活力。 6) 可以根據(jù)您的自己喜好來設(shè)置背景顏色和畫面,使您更加舒適的聊天。 用戶注冊 需求描述:用戶填寫系統(tǒng)給出的注冊項目,并提交給系統(tǒng),成功注冊后,系統(tǒng)生成用戶所注冊的登入 ID,并保存在數(shù)據(jù)庫當(dāng)中。 執(zhí)行者:用戶 前置條件:無 后置條件:無 正常過程: 4 需求分析 8 1) 向服務(wù)端發(fā)送注冊請求 2) 服務(wù)端響應(yīng)客戶端,客戶端彈出注冊信息表單 3) 用戶填寫完表單后將注冊數(shù)據(jù)傳給服務(wù)端處理,并保存在數(shù)據(jù)庫中 4) 返回客戶端一個響應(yīng),顯示用戶注冊的 ID,提示注冊成功 異常過程(可選 ): 用戶填寫表單的數(shù)據(jù)格式不正確或表單中存在空缺的項,客戶端給予提示 信息,并將光標(biāo)定位到出錯的地方。 用戶注冊的項在數(shù)據(jù)庫中發(fā)生沖突,客戶端提示注冊不成功并提示用戶 重新填寫表單。 服務(wù)器未啟動或出現(xiàn)異常 通過注冊模塊實現(xiàn)用戶的在線注冊,所填寫的注冊項目有:用戶名、密碼、密碼確認、性別、年齡、 Email。 圖 431 注冊活動圖 圖 432 登錄活動圖 用戶登入 需求描述:用戶填寫登入 ID 和密碼,經(jīng)服務(wù)器驗證成功后進入聊天室主界面。 執(zhí)行者:用戶 前置條件:用戶成功注冊或已經(jīng)擁有一個合法的 ID 號 后置條件:無 用戶 注冊界面 正確填寫注冊項 提交 確認信息 注冊成功 用戶 進入登入界面 輸入用戶名,密碼 提交 確認信息 進入系統(tǒng) 基于 java 聊天室的設(shè)計與實現(xiàn) 9 正常過程: 1) 向服務(wù)端請求連接,并發(fā)送登錄信息。 2) 服務(wù)端處理并查詢數(shù)據(jù)庫中的用戶信息 3) 返回客戶端一個響應(yīng),提示登錄成功,彈出聊天室主界面。 4) 刷新其他在線用戶的用戶列表信息 異常過程(可選): 用戶填寫的 ID 或密碼與數(shù)據(jù)庫中的紀錄不匹配,客戶端 提示登錄失敗。 客戶端設(shè)置的服務(wù)器地址或端口有誤 。 服務(wù)器未啟動或出現(xiàn)異常 。 私聊 需求描述:用戶可選擇聊天室的在線用戶列表中其他用戶聊天。并且對方有消息提示,雙方發(fā)送的信息對于聊天室的其他用戶是不可見的。 執(zhí)行者:用戶 前置條件:用戶登錄成功,私聊的對方在線 后置條件:無 正常過程: 1) 客戶端與服務(wù)端建立通訊 。 2) 客戶端將用戶發(fā)送的信息打包傳送給服務(wù)端 。 3) 服務(wù)端進行數(shù)據(jù)分析,查找目的用戶的 ID,并將用戶的信息傳給目的用戶 。 4) 目的用戶 收到服務(wù)器的信息后,正確的顯示并保存。 異常過程(可選): 客戶端與服務(wù)端斷開連接,客戶端提示信息發(fā)送失敗。客戶端發(fā)送的私聊內(nèi)容包含不合法的字符特殊需 求(可選):不能與不在線的用戶進行私聊 。 用戶 選擇其他用 戶 輸入信息 確認 發(fā)送信息 4 需求分析 10 圖 434 私聊流程圖 聊天記錄 需求描述:用戶可以查詢聊天的歷史紀錄,包括公聊記錄和私聊記錄。 執(zhí)行者:用戶 前置條件:用戶正確登入后 后置條件:無 正常過程: 1) 發(fā)送、接收信息的同時將信息保存在本地文件中 2) 信息發(fā)送框中可以查詢歷史聊天記錄 3) 從本地文件中讀取信 息,并顯示在記錄顯示匡中 異常過程(可選): 服務(wù)端異常導(dǎo)致客戶端退出,客戶端提示服務(wù)器異常。 客戶端讀取信息時目標(biāo)文件不存在 。 系統(tǒng)消息 需求描述:在聊天室的每一 個用戶都能接收服務(wù)端發(fā)送的的信息提示消息 執(zhí)行者:服務(wù)端 前置條件:服務(wù)端正常運行 后置條件:無 正常過程:服務(wù)器向所有在線用戶發(fā)送消息 客戶端接收到消息,進行消息處理,并正確顯示 異常過程(可選): 1) 服務(wù)端異常,重啟服務(wù)器 2) 出現(xiàn)網(wǎng)絡(luò)異常,發(fā)送系統(tǒng)消息失敗 3) 用戶管理員通過啟動服務(wù)器后,可以通過服務(wù)器操作界面象全部在線的用戶發(fā)送系統(tǒng)消息 4) 用于發(fā)送公告,提示等系統(tǒng)消息,可以方便管理員和客戶的交流和
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1