【網(wǎng)絡聊天系統(tǒng)的設計與實現(xiàn)12000字(論文)】_第1頁
【網(wǎng)絡聊天系統(tǒng)的設計與實現(xiàn)12000字(論文)】_第2頁
【網(wǎng)絡聊天系統(tǒng)的設計與實現(xiàn)12000字(論文)】_第3頁
【網(wǎng)絡聊天系統(tǒng)的設計與實現(xiàn)12000字(論文)】_第4頁
【網(wǎng)絡聊天系統(tǒng)的設計與實現(xiàn)12000字(論文)】_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

4.5.1界面設計 4.5.2功能模塊的實現(xiàn) 30 4引言在當今社會,網(wǎng)絡成了人們生活不可或缺的部分。即時通信軟件作為一種新興的計算機軟件工具,給人們帶來了巨大方便,它是互聯(lián)網(wǎng)時代的產(chǎn)物。在網(wǎng)絡技術不斷發(fā)展的今天,各種符合人需求的軟件系統(tǒng)應運而生,由此,人們?nèi)找嫱ㄟ^網(wǎng)絡相互建立聯(lián)系。其中最為普遍的是電腦聊天室和微信這兩種軟件。微信和騰訊QQ的流行更拉近了人與人的距離,除可具備電話功能外,也可視頻聊天。在這樣一個新的時代里,人們對于溝通的方式和效率都有著更高的要求,于是就產(chǎn)生了一個全新的領域—一聊天室。在此環(huán)境基礎上,聊天室的數(shù)量也在增加↓。1概述在網(wǎng)絡大范圍普及的今天,通過網(wǎng)絡聊天工具,人們之間的溝通日益增多。聊天室是以用戶為中心的交互平臺,它具有交互性和實時性特點,能夠提供實時的語音、視頻等多媒體服務。聊天室系統(tǒng)即時交流方式,滿足人們在網(wǎng)絡上一次和多個人聊天溝通的需求,讓更多人在相同聊天頁面上溝通變的便捷、簡單。隨著網(wǎng)絡技術的不斷發(fā)展,網(wǎng)絡上出現(xiàn)了各種各樣的新業(yè)務,如網(wǎng)上購物、網(wǎng)上教育等等,這些都是以網(wǎng)絡為基礎而產(chǎn)生的新興行業(yè)。多數(shù)人都以為聊天室是為了聊天和娛樂,如今,有商業(yè)價值的聊天室已經(jīng)基本沒有了,商業(yè)價值是否存在,同樣需要審視。聊天室是以網(wǎng)絡為基礎,通過互聯(lián)網(wǎng)來完成信息交流的過程。聊天室也是當下較為熱門的聊天方式,選擇輸入即可即時聊天,這樣也更容易。聊天室就是其中一種現(xiàn)有網(wǎng)絡服務。聊天室可以在網(wǎng)絡上建立一個虛擬的空間,通過這個虛擬世界進行交流與溝通。網(wǎng)頁版比軟件版更容易安裝,而且還能支持語音通話等功能,因此受到很多人的歡迎。本系統(tǒng)的主要內(nèi)容是基于B/S(瀏覽器/服務器)架構開發(fā)的,參照網(wǎng)絡上聊天室結構,對聊天室可以實現(xiàn)的功能進行解析,結合本設計有關需求,開發(fā)設計,撰寫需求分析說明書。論文組織結構由一下幾部分構成,一部分是背景綜述,介紹背景設計環(huán)節(jié),二部分是闡述系統(tǒng)具體開發(fā)環(huán)境:使用專業(yè)版作為服務器運行平臺,服務器開發(fā)5語言使用Java語言,前臺使用Jsp技術、JavaScript、Jquery語言,系統(tǒng)框架使用第三、四部分為系統(tǒng)整體設計與詳細設計,在該設計中,完成了網(wǎng)絡聊天室的各項功能,具備了普通聊天室的特點,包括用帳號登陸聊天室,注冊帳號等;還能對聊天內(nèi)容進行加密處理,防止被非法復制或盜用,保證了數(shù)據(jù)和資料的安全性,提高了工作效率。同時為管理聊天室內(nèi)用戶運用語言文明,讓管理員有能力踢掉那些用不文明語言說話的用戶,展示所有聊天信息。第五部分為測試、主要對系統(tǒng)實現(xiàn)的功能進行測試。最后一部分為結論,總結全文。7MySQL以及Oracle,其中MySQL數(shù)據(jù)庫在選擇上有以下幾個方面的優(yōu)點。MySQL數(shù)據(jù)庫的強大之處,MySQL作為此次開發(fā)使用的數(shù)據(jù)庫來說,在功能上是完全夠用的,并且由于資金的問題,選擇MySQL作為數(shù)據(jù)庫雖然MySQL作為一個開源的數(shù)據(jù)庫,但是在安全性的方面是可以不用擔心的,所以此系統(tǒng)的開發(fā)使用MySQL數(shù)據(jù)庫作為支持。SSM框架技術的組成主要有三種技術:Spring框架技術、SpringMVC框架技框架的主要作用是為開發(fā)者提供可以供選擇的配置文件,可以減少解決大型應用開發(fā)所花費的時間,Spring框架提供了很大程度上減少了程序員的工作量,同時在程序開發(fā)的簡單性、耦合性以及可測離出模型對象,控制器,和其他角色,正是因為這種分離使得操作上可以更加方MyBatis是一種持久層框架,他基本上消除手動配置JDBC的操作,通過使用XML文件或者使用注解的方式來簡化對數(shù)據(jù)庫的使用,同時優(yōu)化數(shù)據(jù)庫對數(shù)據(jù)的8在技術上進行了可行性分析。從技術層面上看,多種編程語言已漸趨成熟,面臨著各種各樣的問題,算法不斷地增加。網(wǎng)絡聊天系統(tǒng)實現(xiàn)了用戶和計算機之間的交流,同時具有良好的交互性,為人們提供更好的生活體驗。從軟件上看,網(wǎng)絡聊天室系統(tǒng)以開發(fā)者工具為主,向大眾開放。從硬件上看,當前硬件的發(fā)展已達到高潮,該硬件平臺能夠充分滿足該系統(tǒng)要求4。在經(jīng)濟上進行了可行性分析:開發(fā)者工具和開放平臺、開發(fā)文檔全部自由公開,自由下載,只要有電腦即可開發(fā),在經(jīng)濟上根本不是什么問題,開發(fā)費用低廉,并且遇到問題也可以在網(wǎng)上進行資料查閱。如果要實現(xiàn)更多的功能的話還必須有專門的軟件和開發(fā)包。在網(wǎng)絡聊天室中開發(fā)一個系統(tǒng),只要有開發(fā)者工具環(huán)在系統(tǒng)運行之后,通過對其數(shù)據(jù)信息的收集和處理,能夠得出相應結論。在進行系統(tǒng)設計時,盡量從用戶立場考慮問題,并能實現(xiàn)提問,使得程序運行的適應性同時,系統(tǒng)界面美觀簡潔,操作簡單易用??梢宰層脩粲泻芎玫氖褂酶惺埽斀袷澜缟蠑y帶電腦除上班需攜帶外,實在是鳳毛麟角,但是大家基本都有電腦。因此我們設計一種能夠隨時隨地發(fā)送短信的軟件——網(wǎng)絡聊天室系統(tǒng)包,讓大家隨時隨地都能收發(fā)短消息。網(wǎng)絡聊天室里的系統(tǒng)不占電腦內(nèi)存,還可利用網(wǎng)絡聊天道,這個時候需要人工操作來完成。網(wǎng)絡聊天室里的系統(tǒng),聊天的過程中,碰到了麻煩,可選擇和機器人交談,多數(shù)問題都能迎刃而解。在聊天過程當中會有一些信息需要保存或者是需要刪除,可以通過智能聊天室來實現(xiàn)這些情況,這樣就9能夠提高用戶體驗度5。通過這個系統(tǒng),用戶能夠更好地掌握自己所需要的信息,通過對用戶需求分析、設計實現(xiàn)等環(huán)節(jié),完成了一個能夠滿足使用人員需求的網(wǎng)絡聊天室系統(tǒng)開發(fā)平臺。網(wǎng)絡聊天室主要分為三大塊的功能,分別是聊天室、智通過對其詳細介紹來闡述整個系統(tǒng)的功能性。本系統(tǒng)環(huán)境適應性重點放在“系統(tǒng)適應”上。網(wǎng)絡聊天室在一定程度上可以說是移動互聯(lián)網(wǎng)時代下的產(chǎn)物,它和傳統(tǒng)的網(wǎng)絡聊天室相比有很大區(qū)別,因此需要考慮其適用性。在電腦大行其道的今網(wǎng)絡聊天室系統(tǒng)這一體系與上述觀點非常契合,整個體系的整體性,是系統(tǒng)自身,系統(tǒng)的相關性是指各部分服務和整體之間的關系。在系統(tǒng)運行之后,通過對其數(shù)據(jù)信息的收集和處理,能夠得出相應結論。系統(tǒng)的目的性是能夠為用戶提供更高質量的使用體驗,能夠讓用戶產(chǎn)生聊天和其他行為。系統(tǒng)的安全性主要是防止病毒和木馬攻擊,同時還要保證數(shù)據(jù)不會泄露出去。系統(tǒng)對環(huán)境的適應能力(1)用戶登陸退出流程圖息天室存儲聊天信息程序圖3.1使用流程圖(2)用戶登錄退出分析用戶通過點擊登陸,即可訪問網(wǎng)絡聊天室系統(tǒng)的主頁,在聊天室的網(wǎng)頁上單擊,進聊天室登陸即可聊天,還可點擊主頁,選用智能聊天,便可開展和機器人的交談,會話內(nèi)容可選聽歌曲,還可選擇問天氣、選用備忘錄功能,可對某些重大事件做備份。系統(tǒng)的交互性是指通過界面來實現(xiàn)交互的功能和方式。若用戶希WebSocket為雙向通信協(xié)議,可實現(xiàn)單條TCP的連接。使得服務端與客戶端賴服務器軟件而由瀏覽器自動執(zhí)行,從而減少了用戶的負擔。在其API中,瀏覽當前許多人都采用Ajax輪詢技術來進行數(shù)據(jù)傳輸。輪詢是一種非常高效的方法,它能夠降低網(wǎng)絡流量,提高了系統(tǒng)性能。其指在特定的時間內(nèi)將請求發(fā)送到服務這一傳輸模式的顯著缺陷是要求不斷向服務器請求,但是因為請求頭包含有其他消息,真正行之有效的資料只占很小的比例,浪費了很多帶寬資源。另外一個缺在常規(guī)開發(fā)模式下,前端呼叫后端某界面,后臺利用界面才可對數(shù)據(jù)庫進行操作,而且系統(tǒng)開發(fā)者的工具里也不那么繁瑣,系統(tǒng)可直接對數(shù)據(jù)庫進行運行,無需建立服務器,使開發(fā)方式簡單化。它能夠提供用戶訪問互聯(lián)網(wǎng)的多種方式,包括網(wǎng)絡瀏覽、下載、搜索等服務。云平臺是指一個服務于多個應用系統(tǒng),它將3.1.5系統(tǒng)模塊分析(1)用戶登錄模塊分析當新的用戶使用這個聊天室系統(tǒng),首先要做的是注冊一個新的用戶,后臺加入數(shù)據(jù)庫注冊信息,對于登錄驗證;報名成功后,再次登陸;在所述用戶名和所(2)用戶聊天模塊分析所述模塊主要展示不同時間的聊天信息,并且用戶可以發(fā)送私人電腦照片,這也進一步方便了用戶,用戶在聊天室中讀取要與好友共享的消息,可選截圖再發(fā)。用戶登陸之后會自動打開聊天界面并進入聊天狀態(tài),此時聊天界面上顯示當前聊天記錄以及歷史記錄,用戶可以進行查看。同時該模塊還能夠對聊天記錄進行存儲和查詢。用戶聊天記錄保存于云數(shù)據(jù)庫chatroom,每個用戶的每一句話都(3)管理員用戶模塊分析本模塊以后臺操作為主,如果某人與網(wǎng)絡聊天的健康環(huán)境相悖,管理員有排除該用戶的權利,或者把這句話強行刪去,這個操作步驟是管理者開啟開發(fā)者工(4)輔助模塊功能分析輔助功能有:展示所有聊天信息、退出聊天室,偵測用戶的新信息。在系統(tǒng)設置界面中輸入“聊天”二字,可以打開一個對話框,該對話框下可分別設有三個選項。展示所有信息,指用戶間聊天信息占用整個屏幕,單擊展示所有信息,也就是可以查看所有聊天內(nèi)容。在進入聊天室之前,需要先關閉所有的窗口和圖標,然后再進行選擇操作,否則無法正常使用該功能。退出聊天室就是用戶從聊天室中退出。檢測用戶是否有新消息發(fā)送或接收到其它用戶傳來的消息等操作。檢測使用者是否擁有新的資料,當用戶收到其他用戶發(fā)來的消息時,提示用戶。退退出聊天室輔助功能顯示全部聊天信息管理用戶模塊檢測用戶是否有新消息系統(tǒng)消息顯示模塊室天聊聊天信息顯示模塊絡網(wǎng)用戶交流聊天模塊在線用戶顯示模塊登錄用戶注冊登錄模塊注冊3.2.1功能模塊設計注注冊管理用戶模塊退出聊天室顯示全部聊天信息提示用戶有新信息系統(tǒng)消息顯示模塊聊天信息顯示模塊用戶交流聊天模塊在線用戶顯示模塊管理用戶模塊圖3.4總體結構圖結構設計如圖3.4所示,系統(tǒng)用戶端主要是實現(xiàn)用戶登錄,用戶可以實現(xiàn)聊天、智能聊天、備忘錄。用戶可以對相應模塊進行操作。(2)系統(tǒng)功能模塊結構用戶注冊登錄模塊:用戶注冊是添加用戶到數(shù)據(jù)中,只能注冊普通用戶,當注冊驗證信息合格,即可登錄進入聊天室。注冊注冊3124圖3.5用戶注冊登錄圖在線用戶顯示模塊:當用戶登錄進入系統(tǒng)后,該頁面實現(xiàn)在線用戶的統(tǒng)計,并將在線用戶依次顯示出來。如果當前用戶屬于管理員角色,則在普通用戶角色的右邊顯示“踢下線”鏈接,如果當前用戶屬于普通用戶角色,則正常顯示在線用戶交流聊天模塊如圖3.6:色3124聊天信息顯示模塊:聊天信息的顯示,首先系統(tǒng)必須獲得與當前用戶正在進行聊天的對象,根據(jù)聊天對象的用戶名,獲得存儲在系統(tǒng)中的聊天記錄,傳送到客戶端,瀏覽器客戶端進行1s刷新界面,從而獲取兩人之間的私密聊天記錄并顯聊天信息顯示聊天信息顯示確認對象獲取對話信息頁面刷新圖3.7聊天信息顯示圖1管理員管理用戶模塊:管理員用戶可和其他用戶進行交談,并時刻對其他使輔助功能:展示所有聊天信息,并退出聊天室。顯示全部信息和退出聊天室均為鼠標右鍵單擊菜單中“選擇”命令下所定義。展示所有信息,指用戶間聊天(1)數(shù)據(jù)庫E-R圖用戶信息記錄主要是用來記錄用戶登錄信息的,用戶名,用戶注冊時間也相聊天信息記錄主要是用來記錄用戶的聊天內(nèi)容、聊天時間、發(fā)送者的一些基用戶名注冊標記用戶信息記錄圖3.9用戶信息記錄E-R圖發(fā)送時間用戶名頭像聊天信息記錄用戶唯一標識聊天信息圖3.10聊天記錄E-R圖(2)數(shù)據(jù)表設計用戶信息記錄表主要就是記錄登陸用戶的信息。表3.1用戶表用戶信息記錄說明系統(tǒng)自動生成注冊時間用戶第一次登陸系統(tǒng)的時間唯一微信id用戶唯一標識用戶名用戶聊天信息記錄主要是記錄聊天的基本信息。表3.2信息表用戶聊天記錄信息說明系統(tǒng)自動生成唯一微信id用戶唯一標識頭像聊天信息發(fā)送時間發(fā)送每條信息的時間用戶名用戶備忘錄信息記錄主要是記錄用戶填寫事件的內(nèi)容時間,需要提醒的時間,需要進行的操作,用戶名,用戶唯一標識等內(nèi)容。具體如表格3.3所示。表3.3用戶備忘錄記錄表用戶備忘錄記錄說明系統(tǒng)自動生成提醒時間需要提醒的時間唯一微信id用戶唯一標識用戶名操作可以進行增加、刪除寫入時間書寫備忘錄的時間3.2.3系統(tǒng)通信設計系統(tǒng)通訊的基礎是Socket。聊天方案中,所有信息都可以發(fā)送到服務器,然后由服務器處理,服務端是處理所有信息的中心,而聊天的功能只不過是服務端和客戶端通信的具象,然后本人分析一下服務端在此過程中所要執(zhí)行的任務或承擔的功能。服務端就是創(chuàng)建—一個ServerSocket,并且連續(xù)不斷的監(jiān)聽客戶端是否需要連接,其次就是服務端作為信息轉存的中心。服務端的任務并不復雜,相比于當初騰訊QQ時代需要做的,現(xiàn)在的設計語言的內(nèi)建庫已經(jīng)足夠完善了??蛻舳素撡F與服務器進行連接通信,接收來自服務器信息,保存聊天記錄到本地。與服務器相比,客戶端的任務更簡單。本設計啟動流程如下:a.啟動Server,創(chuàng)建長連接服務,設置端□。b.長連接服務對象會等待請求。c.啟動Client程序。d.Client對分配的服務器發(fā)送連接請求。e.服務端接收到請求,然后創(chuàng)建長連接服務進行通信。f.服務端和Client分別建立用于數(shù)據(jù)傳輸?shù)腏ava字節(jié)流對象。g.服務端和Client都會對在通信中傳輸?shù)淖止?jié)流進行處理和顯示。h.用戶可隨時結束請求也可收到結束通知。用戶注冊時,操作員錄入用戶名稱,鍵入自創(chuàng)密碼和確認密碼并單擊登記,這時系統(tǒng)先檢測出兩次密碼是否相同,如果沒有相同,提示用戶密碼不符,請再次錄入。若相同,則提示用戶密碼正確,允許使用該網(wǎng)站進行訪問。如果相同,則檢測用戶的名稱是否已注冊,如果已登記,提示為用戶注冊成功,之后系統(tǒng)在數(shù)據(jù)庫的user表中加入用戶注冊信息。在登陸界面中選擇需要進行驗證的項目,界面提示用戶報名成功,以及跳轉至登錄界面。在登錄界面中輸入用戶名和密碼,然后進入登陸狀態(tài)。否兩次密碼是否一致是否用戶名是否已被注冊是結束圖4.1注冊流程圖當用戶登陸時,用戶鍵入用戶名和密碼,系統(tǒng)判斷此用戶名在數(shù)據(jù)庫中的位置,如果沒有,提示使用者重填或登記,如果有用戶名,然后判斷所述密碼和所述用戶名之間是否相匹配,如果否,提示使用者密碼不正確,請重填,如果相匹否判斷用戶名是否存在是否用戶名與密碼是否匹配是圖4.2登錄流程圖當用戶登錄進入聊天室時,系統(tǒng)會將用戶的信息存入application屬性的userMap中,進入系統(tǒng)后,在jsp中獲取userMap,將所有的用戶信息中的用戶名獲取用戶信息存入application中獲取屬性usrMap用戶實現(xiàn)找人聊天,點擊聊天對象的用戶名,獲取聊天對象,填寫發(fā)送內(nèi)容,選擇表情、與發(fā)送字體的顏色,點擊發(fā)送即可進行聊天。在未選擇聊天對象時,點擊發(fā)送,提示用戶選擇聊天對象;在未填寫發(fā)送的內(nèi)容點擊發(fā)送時,提示用戶未填寫發(fā)送內(nèi)容。是否是發(fā)這內(nèi)容是否為空否選擇表情和圖4.4發(fā)送信息流程圖4.1.4聊天信息顯示模塊聊天信息顯示,首先必須保證聊天對象的用戶名不為空,當不為空時,系統(tǒng)將獲取用戶名,在application作用域中獲得,相應的聊天記錄屬性,返回到jsp中,并顯示在界面中。獲取用戶名在aplication中獲取對話屬性將屬性傳送到isp顯示在界面上圖4.5顯示聊天記錄流程圖在用戶登錄聊天室時,系統(tǒng)存儲聊天室的聊天守則,并獲取登錄的用戶名,存儲系統(tǒng)公告(XXX進入聊天室!);當用戶被管理員踢出聊天室時,修改系統(tǒng)公獲取用戶名將聊天室守則和系統(tǒng)公告存將屬性傳送到jsp顯示在界面上結束15刷新isp頁面在application中的userMap中獲得相應的用戶session,清除該session即可將用戶開始開始在apliction中獲取結束顯示與某人的全部聊天信息,當聊天的內(nèi)容占滿全屏,點擊顯示全部消息,開始開始否Cal屬性中是否有值是首先獲取進行對話雙方的用戶名以及id,再比較兩者的id若id1<id2,則messageName=userNamel+userName2;否則messageNa開始開始否是結束圖4.9用戶對話存儲算法戶名添加到isKickedMap中并賦值為1(1表示在線,-1表示被踢)。當管理員將某個用戶踢下線時,將isKickedMap屬性中的改用戶名修改成“*”符號,并賦值為-1。Jsp頁面每秒刷新一次,當檢測到isKickedMap屬性中getAttribute(“*”)==-1時,則該用戶被踢下線,此時要在jsp頁面中提示用戶中是否含有‘*'回到jsp中,在jsp中遍歷出有個值,并且讓id為該值的<tr>標簽的背景色為紅色。開始開始用戶登錄,存儲cal1屬性出對話者的用戶名有值是向jsp傳參call,jsp遍歷出call中的所有值是色,提示用戶有新消息開始Jsp1s檢測顏色不變無消息否否圖4.11檢測當前用戶是否有新消息算法登陸首頁是寫在中的,前臺主要運用jsp動態(tài)網(wǎng)頁技術。并且利用JavaScript語言對用戶進行了信息正確錄入判斷。點擊登錄界面中的注冊用戶,即可訪問用戶注冊界面。圖4.12登錄界面用戶使用微信掃碼進入系統(tǒng)內(nèi),接下來點擊微信登錄,對微聊室系統(tǒng)進行授<viewclass="login-co<buttonclass="login-btn"style="background-color:green;"bindtap="getUserProfil用戶進入聊天室注冊界面,接下來點擊注冊,對注冊進行授權,點擊允許按用戶名:確認密碼:圖4.13注冊界面聊天室界面:左側是在線人員列表顯示,和在線人數(shù)的統(tǒng)計;右側是專門顯示系統(tǒng)公告的地方;中間屬于聊天內(nèi)容的顯示;下方是用戶發(fā)送消息的模塊,在該模塊中,當用戶點擊聊天對象的用戶名,象的用戶名,還可以選擇聊天的表情與字體的顏色,在最下角的((首先,調(diào)用Dimension()功能準確設定框架的尺寸,調(diào)用服務器端構造函數(shù)內(nèi)程序初始化函數(shù),產(chǎn)生服務器端界面。其次,創(chuàng)建并管理與客戶端交互使用的中組件置于窗體上的模式一般不受絕對坐標的支配,而是通過一個“布局管理器”按照組件添加的先后順序來確定它們的位置。管理器會按照一定規(guī)則對各個組件進行管理.使之能夠被正確布置到合適的位置上。各容器擁有各自的管理器。管理器是對容器進行管理并為用戶提供所需功能的軟件模塊。采用了不同管理器,主要是實現(xiàn)各種按鈕和菜單項的偵聽和響應,設置快捷鍵等工作。在服務器Performed()函數(shù)中用if-else選擇結構來實現(xiàn),這個部分是GUI程序設計的核心部如沒有滿足的條件,程序可以采取忽略或者調(diào)用系統(tǒng)默認函數(shù)進行處理。本Item菜單欄中的幫助和sysMessage(或sysMessageButton)發(fā)送系統(tǒng)信息六個事件。當用戶選擇“啟動服務”或單擊“啟動服務”按鈕時,啟動服務端事件被觸發(fā),系統(tǒng)就會調(diào)用startService()函數(shù)。這個函數(shù)主要完成生成服務器端ServerSo為可用狀態(tài),調(diào)用ServerListen函數(shù)啟動一個后臺偵聽線程,偵聽客戶端上下線信息。當用戶選擇“停止服務”或單擊“停止服務”按鈕時,停止服務端事件被觸發(fā)。系統(tǒng)調(diào)用showConfirmDialog()函數(shù)生成一確認對話框,當用戶再一次確認停止時,stopSerice()函數(shù)就會被調(diào)用。這個函數(shù)首先向所有人發(fā)送服務器關閉的portSet、portItem為可用狀態(tài)。最后在文本區(qū)里顯示“服務端已經(jīng)關閉”的信息來告知使用者。當用戶選擇“端□配制”或單擊“端口配制”按鈕時,端口配制事件被觸發(fā)。系統(tǒng)調(diào)用PortConf()函數(shù),生成一個端口設置對話框和用戶交互。用戶可以更改默認的偵聽端口,然后點擊“確定”按鈕保存設置。當用戶選擇“退出”或單擊“退出”按鈕時,退出程序事件被觸發(fā)。系統(tǒng)調(diào)用showConfirmDialog(函數(shù)生被調(diào)用,系統(tǒng)執(zhí)行和“停止服務”一樣的操作后,正確退出。當用戶選擇“幫助”菜單命令時,幫助事件被觸發(fā)。系統(tǒng)調(diào)用helpDialog()函數(shù),生成幫助對話框,向用戶介紹系統(tǒng)使用的方法。用戶可以借助幫助文件快速上手。當用戶向文本框內(nèi)輸入信息,選擇發(fā)送對象,點擊確定按鈕后,發(fā)送系統(tǒng)消息的事件被觸發(fā)。系統(tǒng)調(diào)用SendSystemMessage()方法向接收對象發(fā)送信息。這個函數(shù)首先獲得列表框的內(nèi)容,確定接收者。根據(jù)接收者的不同,分別調(diào)用sendMsgToAll(和向某一特定用戶發(fā)送信息。同時將發(fā)送消息框架的消息清空。客戶端界面的設計在整體上和服務器端相似,只是在具體菜單項、工具欄按鈕上稍有區(qū)別。DownPanel面板上也新增“表情”列表框和一個“悄悄話”選擇(helpMenu)。其中,“操作”菜單組包括“用戶登陸”(loginButton)、“用戶注銷”(logoffButton)、“退出”(exitButton)三個菜單項?!霸O置”菜單組包括“用戶設置”(userButton)和“連接設置”(connectButton)兩個菜單項。與之對應,工具欄部分包括5個按鈕,分別為:“用戶設置”、“連接設置”、“登陸”、“注銷”和“退出”4.5.2功能模塊的實現(xiàn)在ChatClient.java文件里用setDefaultCloseOperation()函數(shù)添加事件處理,用來響應框架的關閉事件。用addActionListener()添加菜單項和工具按鈕的事件處信息“發(fā)送”等事件的發(fā)生。當用戶選擇“用戶設置”菜單項或點擊“用戶設置”按鈕時,用戶設置事件被觸發(fā),系統(tǒng)就會調(diào)用UserConf構造函數(shù),生成一個userConf對象。這是一個對話框交互界面,系統(tǒng)默認的用戶名(userName)“匆匆過客”被當作一個參數(shù)傳遞給構造函數(shù)。當用戶完成用戶信息修改后,通過userInputName字段把用戶名賦給userName變量保存。用戶登錄主要是進行登錄功能的測試,需要考慮外在因素和內(nèi)在因素,主要考慮的問題是有無互聯(lián)網(wǎng)。表5.1登錄測試表功能測試測試編號功能描述用戶注冊/登錄用例目的測試用戶能否注冊/登錄成功前提條件具有電腦端可掃碼編號期望輸出實際情況是否正確錯誤編號1手端未連網(wǎng)正常登錄/注冊登錄/注冊失敗正確2電腦端連網(wǎng)正常登錄/注冊登錄/注冊成功正確通過對用戶登錄的測試,登錄功能可以實現(xiàn)。不足之處是每次登錄都需要經(jīng)過允許,沒有解決首次登錄后再次登錄不用驗證的問題。5.2用戶聊天測試用戶聊天測試主要測試用戶是否能夠進入聊天室,能否實現(xiàn)發(fā)送文字和圖片。表5.2聊天測試表功能測試測試編號功能描述用戶聊天用例目的用戶可以進行正常聊天前提條件已經(jīng)登錄成功,并點

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論