




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于JSP+JavaBean+MySQ在線聊天室系統(tǒng)設(shè)計(jì)(浙江海洋學(xué)院數(shù)理與信息學(xué)院浙江舟山316000)摘要隨著Internet技術(shù)的飛速發(fā)展,網(wǎng)絡(luò)已經(jīng)成為人們生活中不可缺少的一部分,通過(guò)聊天室在線聊天已成為網(wǎng)絡(luò)上人與人之間溝通、交流和聯(lián)系的一種方式。為此,越來(lái)越多的網(wǎng)站開(kāi)始提供在線聊天的功能。與此同時(shí),聊天室也以其方便、快捷、低成本等優(yōu)勢(shì)受到眾多企業(yè)的青睞,很多企業(yè)的網(wǎng)站中也加入了聊天室模塊,以達(dá)到增進(jìn)企業(yè)與消費(fèi)者之間、消費(fèi)者與消費(fèi)者之間相互交流的目的。本文是軟件工程在線聊天室系統(tǒng)的開(kāi)發(fā)說(shuō)明,重點(diǎn)運(yùn)用軟件工程知識(shí)對(duì)系統(tǒng)進(jìn)行分析、設(shè)計(jì)實(shí)現(xiàn)和測(cè)試的思想的具體描述,其中包括軟件生命周期的三個(gè)主要
2、方面:軟件定義(問(wèn)題定義、可行性研究、需求分析)、軟件開(kāi)發(fā)(總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試)和運(yùn)行維護(hù)。通過(guò)實(shí)際的運(yùn)用軟件工程知識(shí)處理問(wèn)題,加強(qiáng)程序的規(guī)范性、清晰性、可靠性,并且使得程序易于維護(hù)。本軟件使用JAVA進(jìn)行編寫,具有良好的兼容性且易于實(shí)現(xiàn)。聊天室操作簡(jiǎn)潔容易上手、結(jié)構(gòu)簡(jiǎn)單、查找方便、實(shí)用性強(qiáng)。關(guān)鍵詞:在線聊天室,軟件工程,JSP,MySQL摘要11 .概述11.1 軟件工程的概述11.2 在線聊天系統(tǒng)概述12 .需求分析12.1.1 確定對(duì)系統(tǒng)的綜合要求22.1.2 分析建模22.1.3 系統(tǒng)邏輯模型33 .在線聊天室系統(tǒng)的設(shè)計(jì)53.1 模塊圖53.2 模塊說(shuō)明54 .在線聊天室系
3、統(tǒng)的編碼和測(cè)試64.1 系統(tǒng)編碼64.1.1 聊天室的界面64.1.2 編碼處理84.2 系統(tǒng)測(cè)試94.2.1 黑盒測(cè)試的內(nèi)容94.2.2 使用黑盒測(cè)試的情況分析105 .總結(jié)11參考文獻(xiàn)111.概述1 軟件工程的概述軟件工程是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。它涉及到程序設(shè)計(jì)語(yǔ)言,數(shù)據(jù)庫(kù),軟件開(kāi)發(fā)工具,系統(tǒng)平臺(tái),標(biāo)準(zhǔn),設(shè)計(jì)模式等方面。在現(xiàn)代社會(huì)中,軟件應(yīng)用于多個(gè)方面。典型的軟件比如有電子郵件,嵌入式系統(tǒng),人機(jī)界面,辦公套件,操作系統(tǒng),編譯器,數(shù)據(jù)庫(kù),游戲等。同時(shí),各個(gè)行業(yè)幾乎都有計(jì)算機(jī)軟件的應(yīng)用,比如工業(yè),農(nóng)業(yè),銀行,航空,政府部門等。這些應(yīng)用促進(jìn)了經(jīng)濟(jì)和社會(huì)
4、的發(fā)展,使得人們的工作更加高效,同時(shí)提高了生活質(zhì)量。軟件工程的目標(biāo)是:在給定成本、進(jìn)度的前提下,開(kāi)發(fā)出具有可修改性、有效性、可靠性、可理解性、可維護(hù)性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作性并且滿足用戶需求的軟件產(chǎn)品。追求這些目標(biāo)有助于提高軟件產(chǎn)品的質(zhì)量和開(kāi)發(fā)效率,減少維護(hù)的困難。1 在線聊天室概述聊天室實(shí)現(xiàn)的主要功能是:接收各個(gè)客戶端的聊天信息,然后按照其聊天對(duì)象將該信息發(fā)送到目標(biāo)瀏覽器上。在一個(gè)瀏覽器的窗口中,既能輸入上網(wǎng)者的發(fā)言,又能看到自己與他人的聊天記錄。同時(shí),為了便于上網(wǎng)者選擇談話對(duì)象,窗口中需要提供目前在線者的名單。.需求分析確定對(duì)系統(tǒng)的綜合要求.功能需求:用戶打開(kāi)瀏
5、覽器,注冊(cè)登錄,登錄成功后選擇自己喜歡的房間,點(diǎn)進(jìn)去聊一下,發(fā)現(xiàn)可聊天,這東西可以用;有些玩家大家不喜歡,亂刷屏,就會(huì)要求管理員把他踢掉,管理員犀利踢之;有些用戶之間的聊天不喜歡被人看到,就有了悄悄話的選項(xiàng);有些用戶喜歡添油加醋,聊天內(nèi)容字體顏色,動(dòng)作表情都可以添加。.性能需求:為了保證系統(tǒng)能夠長(zhǎng)期、安全、穩(wěn)定、可靠、高效的運(yùn)行,系統(tǒng)應(yīng)該滿足以下的性能需求:如果聊天室長(zhǎng)期開(kāi)發(fā),必須考慮數(shù)據(jù)庫(kù)的負(fù)載,管理員有清理數(shù)據(jù)庫(kù)的權(quán)限;本聊天室使用數(shù)據(jù)庫(kù),信息與數(shù)據(jù)庫(kù)的連接是很頻繁的,我們使用JavaBean,能輕松實(shí)現(xiàn)數(shù)據(jù)庫(kù)與外部信息的交換;分析建模功能模型數(shù)據(jù)流圖如圖2-2所示:圖2-2數(shù)據(jù)流系統(tǒng)邏輯
6、模型2.3.1用戶信息實(shí)體E-R圖2.3.2數(shù)據(jù)庫(kù)設(shè)計(jì):createtableuserinfo#用戶信息表(idintprimarykeyauto_increment,usernamevarchar(50),passvarchar(50),lastlogintimedatetime,roleint#1-管理員0-普通會(huì)員);createtablemsginfo#聊天記錄表(idintprimarykeyauto_increment,chatroomvarchar(50),msgfromvarchar(50),msgtovarchar(50),chattimedatetime,chatactio
7、nvarchar(50),msgcontentvarchar(200),secrettinyint(1)#1悄悄話0非悄悄話0默認(rèn));createtableuseronline#在線用戶表(idintprimarykeyauto_increment,chatroomvarchar(50),usernamevarchar(50),lastchattimedatetime,);.在線聊天室設(shè)計(jì)模塊圖以上為模塊圖模塊說(shuō)明分為4個(gè)模塊:.數(shù)據(jù)庫(kù)通用管理模塊:完成數(shù)據(jù)庫(kù)的連接,查詢,更新功能封裝在JavaBean中(DBConn.java)JSP頁(yè)面或者其他JavaBean可以通過(guò)調(diào)用DBConn對(duì)象的
8、方法連接操作數(shù)據(jù)庫(kù)。.用戶登錄注冊(cè)模塊:聊天室注冊(cè)簡(jiǎn)化,將注冊(cè)和登錄融合一起,第一次登錄,如果用戶信息表中沒(méi)有該用戶名,即時(shí)添加。下次登錄可以繼續(xù)用此用戶,登錄后用戶就會(huì)帶著自己的登錄信息(session),遨游聊天室模塊。.聊天室模塊先有個(gè)房間列表供用戶選擇,用戶選擇自己喜歡的房間進(jìn)入聊天室。聊天室有個(gè)框架里面分為3個(gè)部分:輸入消息顯示消息在線用戶列表.管理員功能模塊判斷是否為管理員有個(gè)友好的界面通過(guò)點(diǎn)擊頁(yè)面,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的刪除修改查詢4.在線聊天室系統(tǒng)的編碼和測(cè)試系統(tǒng)編碼聊天室系統(tǒng)的界面截圖。注冊(cè)登錄模塊login.jsplogincheck.jspW&|因登錄本系統(tǒng)無(wú)須注冊(cè),登錄
9、后自動(dòng)保存用戶名和密碼©聊天室模塊*因房間列表Ma而in,你好!做為測(cè)試人員的真三討論區(qū)oA三國(guó)殺討論區(qū)MA搞笑工專房0人口談天說(shuō)地0人r進(jìn)人聊天室】文件扁?;瞬榭葱氖找庖幕毓ぞ逧幫助咕,匚福美工專居除其國(guó)毋吊身貫面回,工具,admin定034笑叫阿地說(shuō):掛不,美貝admin對(duì)034笑呵呵地說(shuō)工就一個(gè)曾架子系統(tǒng)公告:期min進(jìn)入了聊天室,大家歡迎!034對(duì)所有人直接一個(gè)飛吻,說(shuō)是好好弄弄吧034對(duì)所有人直接一個(gè)飛吻,說(shuō)明天起了震我一下見(jiàn)a加in時(shí)所有人說(shuō):界面這個(gè)暑假再學(xué)學(xué)admin對(duì)所有人說(shuō):好的034對(duì)所有人直接一個(gè)飛吻,說(shuō)你有事情做034對(duì)所有人直接一個(gè)飛吻,說(shuō)弄點(diǎn)我做做adm
10、in對(duì)所有人笑呵呵地說(shuō):會(huì)留意的adrrin對(duì)所有人笑呵呵地說(shuō),你擅長(zhǎng)什么034時(shí)所有人直接一個(gè)飛吻,說(shuō):CAT畫圖用戶列表團(tuán)所有人admin0S4時(shí)所有人|動(dòng)作表情電活國(guó)悄悄話高級(jí)功能I網(wǎng)施沃宜顏色黑色國(guó)gI寓開(kāi)聊大堂,iIm口匚:+innuz-Wj管理員模塊管理員頁(yè)面,WindcwInternetExplorer+ittp:/mvpp.nneitxj,com/ChatRoom/manager.jsp用戶名最近聊天時(shí)間最近登錄時(shí)間Iadmin2010-07-0920:19:2L00342010-07-0920:19:35,0踢工4.1.2編碼處理數(shù)據(jù)庫(kù)通用管理模塊DBConn.java注冊(cè)登
11、錄模塊login.jsp登錄界面弄個(gè)表單提交再加上JS的空值驗(yàn)證logincheck.jsp登錄檢測(cè)處理UserinfoMgr.java封裝了登錄檢測(cè)用戶信息和添加用戶信息方法的JavaBean方法有check()saveToDB()聊天室模塊sessioncheck.jsp檢測(cè)session信息判斷用戶是否登錄chatframe.jsp框架包含顯示在線列表輸入三個(gè)框架JavaBean有Msg.java聊天消息封裝體UserOnline在線用戶封裝體ChatRoomMgr.java聊天室管理子模塊:聊天室列表選擇模塊roomlist.jsp聊天室選擇頁(yè)面roomlistdeal.jsp聊天室選
12、擇并處理頁(yè)面信息顯示模塊showmsg.jsp聊天信息顯示頁(yè)面getmsg.jsp聊天信息加載頁(yè)面實(shí)現(xiàn)無(wú)刷新showmsg的任務(wù):1.加載真正得到消息,并實(shí)時(shí)刷新的頁(yè)面,實(shí)現(xiàn)不閃爍效果。2.確定加載內(nèi)容的位置getmsg的任務(wù):1.刷新,JS實(shí)現(xiàn)無(wú)聲音2.各種操作得到結(jié)果3.在具體位置顯示結(jié)果在線列表模塊onlinelist.jsp在線用戶列表頁(yè)面信息輸入模塊input.jsp信息輸入頁(yè)面sendmsg.jsp信息輸入處理logout.jsp離開(kāi)房間處理changeroom.jsp重新選擇房間處理管理員模塊maneger.jsp管理員高級(jí)頁(yè)面kick.jsp踢人功能管理員踢人實(shí)現(xiàn)manager
13、.jsp先判斷是不是管理員,如果不是,提示并退出窗口本頁(yè)面直接對(duì)數(shù)據(jù)庫(kù)操作,顯示所有在線玩家列表,和最近發(fā)言時(shí)間checkbox復(fù)選框傳遞用戶名串nameskick.jsp接下來(lái)是爽快的踢人操作調(diào)用ChatRoomMgr的logout()方法,依次傳遞namesi就實(shí)現(xiàn)批量踢人踢完之后提示,并刷新manager.jsp4.2系統(tǒng)測(cè)試信息技術(shù)深深融入業(yè)務(wù)生活,使得軟件產(chǎn)品質(zhì)量的要求變得很高。這也使我們?yōu)樘岣哕浖y(cè)試的效率來(lái)尋求各式各樣的方法。而軟件測(cè)試的方法和技術(shù)是多種多樣的。對(duì)于軟件測(cè)試技術(shù),可以從不同的角度加以分類:按測(cè)試階段可分為:?jiǎn)卧獪y(cè)試、集成測(cè)試、確認(rèn)測(cè)試。測(cè)試任何產(chǎn)品都有兩種方法:如
14、果已經(jīng)知道了產(chǎn)品應(yīng)該具有的功能,可以通過(guò)測(cè)試來(lái)檢驗(yàn)是否每個(gè)功能都能正常使用;如果知道產(chǎn)品的內(nèi)部過(guò)程,可以通過(guò)測(cè)試來(lái)檢驗(yàn)產(chǎn)品內(nèi)部動(dòng)作是否按照規(guī)格說(shuō)明書的規(guī)定正常進(jìn)行。前一種方法稱為黑盒測(cè)試,后一種方法成為白盒測(cè)試。黑盒測(cè)試的內(nèi)容功能測(cè)試也稱為黑盒測(cè)試,用于驗(yàn)證系統(tǒng)的各項(xiàng)功能是否能正常完成。由于實(shí)際情況的多樣性,需要由多人重復(fù)測(cè)試,在不同情況下執(zhí)行各項(xiàng)功能操作,其輸出就是該功能的執(zhí)行結(jié)果。黑盒測(cè)試著重測(cè)試軟件功能。黑盒測(cè)試并不能取代白盒測(cè)試,它是與白盒測(cè)試互補(bǔ)的測(cè)試方法,它很可能發(fā)現(xiàn)白盒測(cè)試不易發(fā)現(xiàn)的其他類型錯(cuò)誤。黑盒測(cè)試發(fā)現(xiàn)下述類型錯(cuò)誤:(1)功能不正確或遺漏了功能。(2)界面錯(cuò)誤。(3)數(shù)據(jù)結(jié)
15、構(gòu)錯(cuò)誤或外部數(shù)據(jù)庫(kù)訪問(wèn)錯(cuò)誤。(4)性能錯(cuò)誤。(5)初始化和終止錯(cuò)誤。使用黑盒測(cè)試的情況分析采用等價(jià)劃分的有效等價(jià)類和無(wú)效等價(jià)類進(jìn)行測(cè)試。.注冊(cè)登錄功能的測(cè)試比如正確賬號(hào)admin,密碼123(1)測(cè)試數(shù)據(jù):輸入賬號(hào)admin輸入密碼123預(yù)期的輸出結(jié)果:跳轉(zhuǎn)到roomlist.jsp頁(yè)面并且能獲得session值實(shí)際運(yùn)行結(jié)果如下圖所示:。層房間列表51adnin,你好!做為測(cè)試人員第真三討論區(qū)0人三國(guó)殺討論區(qū)0人搞笑工專房10人談天說(shuō)地0人進(jìn)入聊天室運(yùn)行結(jié)果符合預(yù)期情況。(2)測(cè)試數(shù)據(jù):輸入賬號(hào)admin124預(yù)期的輸出結(jié)果:提示您輸入的用戶或密碼錯(cuò)誤,請(qǐng)重新輸入實(shí)際運(yùn)行結(jié)果如下圖所示:您輸入
16、的用戶或密碼錯(cuò)誤,請(qǐng)重新輸入運(yùn)行效果符合預(yù)期情況。測(cè)試數(shù)據(jù):車入賬號(hào)admin000,123(這個(gè)賬號(hào)數(shù)據(jù)庫(kù)里沒(méi)有)預(yù)期的輸出結(jié)果:直接注冊(cè)成功,跳轉(zhuǎn)到roomlist.jsp頁(yè)面運(yùn)行結(jié)果符合預(yù)期情況。5.總結(jié)本設(shè)計(jì)實(shí)現(xiàn)了在線聊天系統(tǒng)的基本功能,雖然沒(méi)有華麗的界面,超強(qiáng)的性能,就練手學(xué)習(xí)而言綽綽有余。通過(guò)在線聊天室的設(shè)計(jì),感覺(jué)動(dòng)手能力增強(qiáng)了很多,JAV斕程能力有了比較大的提升。設(shè)計(jì)本系統(tǒng),是對(duì)自己專業(yè)知識(shí)的一次檢驗(yàn),也是一次增強(qiáng)自身綜合素質(zhì)機(jī)會(huì)。軟件工程這門課程將我們從局部的編寫程序帶入了整體開(kāi)發(fā)軟件的階段,這是對(duì)我們知識(shí)與能力的一種挑戰(zhàn)。本文是軟件工程在線聊天室系統(tǒng)的開(kāi)發(fā)說(shuō)明,重點(diǎn)描述運(yùn)用軟件工程知識(shí)對(duì)系統(tǒng)進(jìn)行分析、設(shè)計(jì)和實(shí)現(xiàn)的思想,其中包括軟件生命周期的三個(gè)主要方面:軟件定義(問(wèn)題定義、可行性研究、需求分析)、軟件開(kāi)發(fā)(總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試)和運(yùn)行維護(hù)。通過(guò)對(duì)開(kāi)發(fā)本系統(tǒng)的文檔的書寫,更進(jìn)一步學(xué)習(xí)了軟件開(kāi)發(fā)的全過(guò)程,把軟件工程
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 關(guān)鍵客戶管理考題試題及答案
- 互聯(lián)網(wǎng)架構(gòu)開(kāi)發(fā)中的質(zhì)量管理試題及答案
- 酒店管理師考試要點(diǎn)和試題及答案
- 商務(wù)禮儀師職場(chǎng)挑戰(zhàn)試題與答案
- 網(wǎng)絡(luò)管理實(shí)務(wù)試題及答案
- 商務(wù)活動(dòng)后的跟進(jìn)禮儀試題及答案
- 酒店員工激勵(lì)政策設(shè)計(jì)試題及答案
- 關(guān)鍵機(jī)械工程師試題及答案解析寶典
- 酒店管理師模擬試題及答案分享
- 2024年質(zhì)量控制與管理考題及試題及答案
- 2024版抗菌藥物DDD值速查表
- 裝配式部分包覆鋼-混凝土組合結(jié)構(gòu)技術(shù)規(guī)程
- 北師大版四年級(jí)下冊(cè)數(shù)學(xué)第一單元測(cè)試卷帶答案
- 瑞得RTS-820系列全站儀說(shuō)明書(適用RTS-822.822A.822L.822R.822R .822R3)
- 二年級(jí)數(shù)學(xué)繪本
- (完整版)英語(yǔ)四級(jí)詞匯表
- 作家的勞動(dòng)(2023年江西中考語(yǔ)文試卷議論文閱讀題及答案)
- 2024年中考數(shù)學(xué)壓軸題型(江蘇專用)專題05 幾何中的尺規(guī)作圖(解答壓軸題)(含解析)
- 工業(yè)污水處理的PLC控制
- DBJ50-T-390-2021公交停車港設(shè)計(jì)標(biāo)準(zhǔn)
- JB-T 8130.1-1995 恒力彈簧支吊架
評(píng)論
0/150
提交評(píng)論