




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基于jsp+javabean+mysql在線聊天室系統(tǒng)設(shè)計(浙江海洋學(xué)院 數(shù)理與信息學(xué)院 浙江 舟山316000)摘要隨著internet技術(shù)的飛速發(fā)展,網(wǎng)絡(luò)已經(jīng)成為人們生活屮不可缺少的一部 分,通過聊天室在線聊天已成為網(wǎng)絡(luò)上人與人之間溝通、交流和聯(lián)系的一種方式。為此,越來越多的網(wǎng)站開始捉供在線聊天的功能。與此同時,聊天室也以其 方便、快捷、低成本等優(yōu)勢受到眾多企業(yè)的青睞,很多企業(yè)的網(wǎng)站中也加入了聊 天室模塊,以達到增進企業(yè)與消費者之間、消費者與消費者之間相互交流的目的。木文是軟件工程在線聊天室系統(tǒng)的開發(fā)說明,重點運用軟件工程知識對系統(tǒng) 進行分析、設(shè)計實現(xiàn)和測試的思想的具體描述,其中包括軟件生
2、命周期的三個主 要方而:軟件定義(問題定義、可行性研究、需求分析)、軟件開發(fā)(總體設(shè)計、 詳細設(shè)計、編碼、測試)和運行維護。通過實際的運用軟件工程知識處理問題, 加強程序的規(guī)范性、清晰性、可靠性,并11使得程序易于維護。本軟件使用java 進行編寫,具有良好的兼容性且易于實現(xiàn)。聊天室操作簡潔容易上手、結(jié)構(gòu)簡單、 查找方便、實用性強。關(guān)鍵詞:在線聊天室,軟件工程,jsp, mysql摘要1概述11.1軟件工程的概述11.2在線聊天系統(tǒng)概述1需求分析12.3.1確定對系統(tǒng)的綜合要求22. 3. 2分析建模22. 2. 3系統(tǒng)邏輯模型33. 在線聊夭室系統(tǒng)的設(shè)計51模塊圖53.2模塊說明5在線聊天室
3、系統(tǒng)的編碼和測試64. 1系統(tǒng)勾iili馬64.1. 1聊天室的界面64. 1.2編碼處理84. 2系統(tǒng)測試94.2. 1黑盒測試的內(nèi)容94.2.2使用黑盒測試的情況分析105. 總結(jié)11參考文獻111.概述1.1軟件工程的概述軟件工程是一門研究用工程化方法構(gòu)建和維護冇效的、實用的和高質(zhì)量的軟件的學(xué)科。 它涉及到程序設(shè)計語言,數(shù)據(jù)庫,軟件開發(fā)工具,系統(tǒng)平臺,標(biāo)準(zhǔn),設(shè)計模式等方而。在現(xiàn) 代社會中,軟件應(yīng)用于多個方面。典型的軟件比如有電子郵件,嵌入式系統(tǒng),人機界面,辦 公套件,操作系統(tǒng),編譯器,數(shù)據(jù)庫,游戲等。同時,各個行業(yè)幾乎都有計算機軟件的應(yīng)用, 比如工業(yè),農(nóng)業(yè),銀行,航空,政府部門等。這些應(yīng)
4、用促進了經(jīng)濟和社會的發(fā)展,使得人們 的工作更加高效,同時提高了生活質(zhì)呈:。軟件工程的目標(biāo)是:在給定成木、進度的前提下,開發(fā)出具有可修改性、有效性、 可靠性、可理解性、可維護性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操 作性并且滿足用戶需求的軟件產(chǎn)品。追求這些目標(biāo)有助于提高軟件產(chǎn)品的質(zhì)量和開發(fā) 效率,減少維護的怵i難。2在線聊天室概述聊天室實現(xiàn)的主要功能是:接收各個客戶端的聊天信息,然后按照其聊天對象將該信息發(fā)送 到目標(biāo)瀏覽器上。在一個瀏覽器的窗口中,既能輸入上網(wǎng)者的發(fā)言,乂能看到自己與他人的 聊天記錄。同時,為了便于上網(wǎng)者選擇談話對象,窗ii屮需要提供目前在線者的名單。需求分析2. 1確
5、定對系統(tǒng)的綜合要求1功能需求:川戶打開瀏覽器,注冊登錄,登錄成功后選擇白己喜歡的房間,點進去聊一卜,發(fā)現(xiàn)可 聊天,這東西可以用;有些玩家大家不喜歡,亂刷屏,就會要求管理員把他踢掉,管理員犀利踢之;有些用戶z間的聊天不喜歡被人看到,就有了悄悄話的選項;冇些用戶喜歡添油加醋,聊天內(nèi)容字體顏色,動作表悄都可以添加。性能需求:為了保證系統(tǒng)能夠長期、安全、穩(wěn)定、可靠、高效的運行,系統(tǒng)應(yīng)該滿足以下的性能需 求:如果聊天室長期開發(fā),必須考慮數(shù)據(jù)庫的負載,管理員有清理數(shù)據(jù)薛的權(quán)限;木聊天室使用數(shù)據(jù)庫,信息與數(shù)據(jù)庫的連接是很頻繁的,我們使川javabean,能輕松 實現(xiàn)數(shù)據(jù)庫與外部信息的交換;2-2分析建模2.
6、 2. 1功能模型數(shù)據(jù)流圖如圖2-2所示:調(diào)川*jspv返冋結(jié)果javabeanv返回揚像數(shù)據(jù)./(mysql、一圖2-2數(shù)據(jù)流2. 3系統(tǒng)邏輯模型2. 3. 1用戶信息實體e-r圖2. 3. 2數(shù)據(jù)庫設(shè)計:create table userinfo(id int primary key auto_increment, username varchar(50),pass varchar(50),lastlogintime datetime,#川戶信息表role int #1 管理員0普通會員);create table msginfo#聊天記錄表(id int primary key auto
7、_incrcmcnt,chatroom varchar(50),msgfrom varchar(50),msgto varchar(50),chattime datetime,chataction varchar(50),msgcontent varchar(200),secret tinyint(l)#l悄悄話()非悄悄話0默認);create table useronline#在線用戶表(id int primary key auto_increment,chatroom varchar(50),username varchar(50),lastchattimc datetime,);3.
8、在線聊天室設(shè)計3.1模塊圖以上為模塊圖3.2模塊說明分為4個模塊:1 數(shù)據(jù)庫通用管理模塊:完成數(shù)據(jù)庫的連接,查詢,更新功能 封裝在javabean中 (dbconn.java) jsp頁|何或者他javabcan可以通過調(diào)用dbconn 對象的方法連接操作數(shù)據(jù)庫。2.用戶登錄注冊模塊:聊天室注冊簡化,將注冊和登錄融合一起,第一次登錄,如果用 戶信息表中沒有該用八名,即時添加。下次登錄可以繼續(xù)用此用八, 登錄后用戶就會帶著口己的登錄信息(session),遨游聊天室模塊。聊天室模塊先有個房間列表供用戶選擇,用戶選擇自己喜歡的房間進入聊天 室。聊天宗有個框架里而分為3個部分:輸入消息顯示消息在線用
9、戶列表管理員功能模塊判斷是否為管理員有個友好的界而通過點擊頁面,實現(xiàn)對數(shù)據(jù)庫的刪除修改查詢4.在線聊天室系統(tǒng)的編碼和測試4. 1系統(tǒng)編碼4.1.1聊天室系統(tǒng)的界面截圖。注冊登錄模塊 login.jsp logincheck.jsp本系統(tǒng)無須注冊,登錄后自動保存用戶名和密碼。昵稱:密碼:聊天室模塊盤£ 圉房間列表15! admin, w!做為測試人員於o真三討論區(qū)0人o三國殺討論區(qū)0人搞笑工專房0人o談天說地0人進入聊天室文件 編輯固 查看qd 收藏夾 工具 幫助凹宙宀 因搞笑工專房空丫 si耐丫誇頁面(e) 工具(0)用戶列表2 所有人 admin 034admin 034笑呵呵地說
10、:超不美觀 admin對034笑呵呵地說:就一個骨架子 系統(tǒng)公告:admin®入了聯(lián)天室,大家歡迎! 034對所有人直接一個飛吻,說:是好好弄弄吧 034對所有人直接一個飛吻,說:明天起了震我一下呢 admin對餅有人說:界面這個魯假再學(xué)學(xué) admin對所有人說:好的 034對所有人直接一個飛吻,說:你有事情做 034對所有人直接一個飛吻,說:弄點我做做 admin對所有人笑呵呵地說:會留意的 admin對所有入笑呵呵地說:你擅長什么 034對所有人直接一個飛吻,說:cad畫圖對所有人動作表情說話fi 悄悄話高級功能切換聊天宣11|顏色黒色h (提交e ,離開聊天室j完戍a inte
11、rnet+ mnoz. x 管理員模塊q管理員頁 fi * windows internet explorer 冏 http:/myjsp. meibu. com/chatroom/ma nag 曰.jsp用戶名最近聊天時間最近登錄時間admin 2010-07-09 20:19:21. 00342010-07-09 20:19:35.04.1.2編碼處理數(shù)據(jù)庫通用管理模塊dbconn.java注冊登錄模塊login.jsp登錄界面弄個表單提交再加上js的空值驗證logincheck.jsp登錄檢測處理userinfomgr.java封裝了登錄檢測用戶信息和添加用戶信息方法的javabean
12、方法有 check() savetodb()聊天室模塊 sessioncheck.jsp檢測session信息判斷用戶是否登錄 chatframe.jsp框架 包含 顯示 在線列表 輸入 三個框架 javabean 冇msg.java 聊天消息封裝體useronline在線用丿哇寸裝體chatroommgr.java 聊天室錚理子模塊:聊天室列表選擇模塊 roomlist.jsp聊天室選擇頁面roomlistdeal.jsp 聊天室選擇并處理頁面信息顯示模塊showmsg.jsp聊天信息顯示頁面 getmsg.jsp 聊天信息加載頁面 實現(xiàn)無刷新showmsg的任務(wù):1 .加載真正得到消息,并
13、實時刷新的頁面,實現(xiàn)不閃爍效果。2 確定加載內(nèi)容的位置getmsg的任務(wù):1.刷新,js實現(xiàn)無聲音2 .各種操作得到結(jié)果3 .在具休位置顯 示結(jié)果在線列表模塊onlinelist.jsp在線用八列表頁而信息輸入模塊input.jsp信息輸入頁面sendmsg.jsp信息輸入處理 logout.jsp離開房間處理changer<x)ni.jsp重新選擇房間處理管理員模塊maneger.j sp管理員高級頁而kick.jsp踢人功能管理員踢人實現(xiàn)managerjsp先判斷是不是管理員,如果不是,提示并退出窗口本頁面宜接對數(shù)據(jù)庫操作,顯示所有在線玩家列表,和最近發(fā)言時間 checkbox復(fù)選椎
14、傳遞川八名串nameskick.jsp接下來是爽快的踢人操作調(diào)用chatroommgr的logout ()方法,依次傳遞names i 就實現(xiàn)批 量踢人踢完z后提示,并刷新manager. jsp4. 2系統(tǒng)測試信息技術(shù)深深融入業(yè)務(wù)生活,使得軟件產(chǎn)站質(zhì)量的要求變得很高。這也使我們?yōu)樽襟{軟 件測試的效率來尋求各式各樣的方法。而軟件測試的方法和技術(shù)是多種多樣的。對于軟件測 試技術(shù),可以從不同的角度加以分類:按測試階段可分為:單元測試、集成測試、確認測試。測試任何產(chǎn)品都有兩種方法:如果已經(jīng)知道了產(chǎn)品應(yīng)該具有的功能,可以通過測試來檢 驗是否每個功能都能正常使用;如果知道產(chǎn)品的內(nèi)部過程,可以通過測試來檢
15、驗產(chǎn)品內(nèi)部動 作是否按照規(guī)格說明帖的規(guī)定正常進行。前一種方法稱為黑盒測試,后一種方法成為白盒測 試。4. 2. 1黑盒測試的內(nèi)容功能測試也稱為黑盒測試,用于驗證系統(tǒng)的各項功能是否能正常完成。由于實際情況的 多樣性,需要由多人重復(fù)測試,在不同情況下執(zhí)行各項功能操作,其輸出就是該功能的執(zhí)行 結(jié)果。黑盒測試著匝測試軟件功能。黑盒測試并不能取代白盒測試,它是與白盒測試互補的 測試方法,它很可能發(fā)現(xiàn)片盒測試不易發(fā)現(xiàn)的其他類型錯課。黑盒測試發(fā)現(xiàn)下述類型錯誤:功能不正確或遺漏了功能。界面錯課。數(shù)據(jù)結(jié)構(gòu)錯誤或外部數(shù)據(jù)庫訪問錯誤。性能錯誤。初始化和終止錯課。4. 2.2使用黑盒測試的情況分析采用等價劃分的有效等
16、價類和無效等價類進行測試。1.注冊登錄功能的測試比如正確賬號admin ,密碼123(1)測試數(shù)據(jù):輸入賬號admin輸入密碼123預(yù)期的輸出結(jié)果:跳轉(zhuǎn)到roomlist, jsp頁面 并尺能獲得session值 實際運行結(jié)果如下圖所示:壯令囲房間列表5! admin.你好i做為測試人員於o真三討論區(qū)0人o三國殺討論區(qū)0人®搞笑工專房0人o談天說地0人進入聊天室運行結(jié)果符合預(yù)期悄況。(2)測試數(shù)據(jù):輸入賬號admin 124預(yù)期的輸出結(jié)果:提示您輸入的用戶或密碼錯謀,請重新輸入 實際運行結(jié)果如下圖所示:您輸入的用戶或密碼錯誤,請重新輸入運行效果符合預(yù)期情況。測試數(shù)據(jù):輸入賬號admi
17、nooo, 123 (這個賬號數(shù)據(jù)庫里沒有) 預(yù)期的輸出結(jié)果:直接注冊成功,跳轉(zhuǎn)到roomlist, jsp頁面 運行結(jié)果符合預(yù)期情況。本設(shè)計實現(xiàn)了在線聊天系統(tǒng)的基本功能,雖然沒有華麗的界面,超強的性能,就練手學(xué) 習(xí)而言綽綽有余。通過在線聊天室的設(shè)計,感覺動手能力增強了很多,java編程能力有了比鮫大的提升。 設(shè)計木系統(tǒng),是對自己專業(yè)知識的一次檢驗,也是一次增強自身綜合素質(zhì)機會。軟件工程這 門課程將我們從局部的編寫程序帶入了整體開發(fā)軟件的階段,這是對我們知識與能力的一種 挑戰(zhàn)。本文是軟件工程在線聊天室系統(tǒng)的開發(fā)說明,重點描述運用軟件工程知識對系統(tǒng)進行 分析、設(shè)計和實現(xiàn)的思想,其中包括軟件牛命周期的三個主要方而:軟件定義(問題定義、 可行性研究、需求分析)、軟件開發(fā)(總體設(shè)計、詳細設(shè)計、編碼、測試)和運行維護。通 過對開發(fā)本系統(tǒng)的文檔的書寫,更進一步學(xué)習(xí)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 校園水溝清理協(xié)議書
- 委托代理報稅協(xié)議書
- 重慶工傷賠付協(xié)議書
- 酒吧營銷培訓(xùn)協(xié)議書
- 商行轉(zhuǎn)讓轉(zhuǎn)租協(xié)議書
- 投資合作租賃協(xié)議書
- 簡易機械租賃協(xié)議書
- 增量分紅合伙協(xié)議書
- 酒席訂金協(xié)議書范本
- 鉆石購買保密協(xié)議書
- 國家糧食和物資儲備局招聘考試真題2024
- 部編版六年級語文下冊期中考試卷(有答案)
- 生物-華大新高考聯(lián)盟2025屆高三3月教學(xué)質(zhì)量測評試題+答案
- 演出經(jīng)紀(jì)人資格證常見試題及答案分析
- 2024年河北建投集團招聘工作人員考試真題
- 2025年湖北省八市高三(3月)聯(lián)考物理試卷(含答案詳解)
- 貴州國企招聘2024貴州磷化(集團)有限責(zé)任公司招聘89人筆試參考題庫附帶答案詳解
- 《哪吒電影產(chǎn)品的營銷問題及完善對策研究10000字》
- 4.2依法履行義務(wù) 課件-2024-2025學(xué)年統(tǒng)編版道德與法治八年級下冊
- 《上海金茂大廈》課件
- 2025年河南交通職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
評論
0/150
提交評論