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

正文內(nèi)容

基于cs結(jié)構(gòu)的聊天室系統(tǒng)(編輯修改稿)

2025-07-19 00:49 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 tyle=fontsize:12pxoption value=請(qǐng)選擇option value=笑著笑著option value=高興地高興地option value=含情脈脈含情脈脈當(dāng)用戶自定義了發(fā)言文字的顏色、發(fā)言的表情、發(fā)言的對(duì)象并輸入了發(fā)言內(nèi)容后,用戶就可以點(diǎn)擊[發(fā)言]按鈕將發(fā)言的內(nèi)容以記錄的形式提交到服務(wù)器,或者點(diǎn)擊[復(fù)原]按鈕取消本次發(fā)言。其中需要值得注意的是聊天用戶客戶端IP地址的獲得方法,由于IP地址并不需要顯示在網(wǎng)頁中,所以程序中使用“hidden”隱藏域來存儲(chǔ)用戶客戶端IP地址并最后提交到服務(wù)器的數(shù)據(jù)庫中。 把上面的程序保存在具有執(zhí)行權(quán)限的服務(wù)器目錄中,在客戶端用瀏覽器打開時(shí),屏幕顯示出聊天室的用戶登陸界面。用戶輸入用戶名及密碼正確登陸后即可進(jìn)行聊天,按[發(fā)送]按鈕時(shí),用戶的發(fā)言便會(huì)將用戶的IP地址、發(fā)言文字的顏色、發(fā)言的表情、發(fā)言的對(duì)象以及發(fā)言的內(nèi)容一起寫入聊天表中。 接下來,用戶設(shè)計(jì)所關(guān)心的就是怎樣將發(fā)言的信息顯示在瀏覽器中,而且還要實(shí)現(xiàn)自動(dòng)刷新最新的聊天內(nèi)容。顯示發(fā)言信息模塊與聊天者發(fā)言信息模塊的關(guān)系需要注意的是,發(fā)言之后,用戶可以實(shí)現(xiàn)發(fā)言的內(nèi)容并不是立即出現(xiàn)在屏幕上的,而是在很短暫的是延遲后才能看到發(fā)言的內(nèi)容。那是因?yàn)榘l(fā)言程序本身負(fù)責(zé)的純粹是把數(shù)據(jù)寫入數(shù)據(jù)庫,而不會(huì)向客戶端返回任何東西。聊天室還需要一個(gè)重要的程序,這個(gè)程序自動(dòng)地、不斷地讀取數(shù)據(jù)庫中最新的記錄,并把這些記錄顯示在所有用戶的瀏覽器上。這個(gè)程序唯一的任務(wù)是讀取聊天表中的數(shù)據(jù),把數(shù)據(jù)都顯示出來。無論客戶是否發(fā)言,無論客戶對(duì)誰說話,無論客戶選擇什么表情與顏色,即使這個(gè)聊天室沒有一個(gè)用戶說話,這個(gè)程序也是不段的讀取聊天表中的數(shù)據(jù),每N秒鐘刷新一次,這個(gè)N是由編程者決定的。由此可知,登陸、發(fā)言部分與自動(dòng)刷新部分本身并沒有任何聯(lián)系,二者之間的數(shù)據(jù)傳遞是通過寫數(shù)據(jù)庫和讀數(shù)據(jù)庫操作實(shí)現(xiàn)的。實(shí)現(xiàn)聊天信息顯示的關(guān)鍵技術(shù)(1)記錄的顯示順序程序?qū)l(fā)言信息寫入數(shù)據(jù)庫的時(shí)候,記錄是不斷往數(shù)據(jù)表的尾部增加的。因此,用戶必須知道哪一句話是最新的,哪一句話是在前面說的。在聊天表中,有一個(gè)自動(dòng)編號(hào)的字段ID,這個(gè)字段非常有用。ID最大的記錄是最新輸入的記錄,每添加一個(gè)記錄,ID自動(dòng)加1。由此,用戶可通過ID來對(duì)用戶發(fā)言的信息進(jìn)行從新到舊的、一句一句的排序輸出。眾所周知,在SQL的Select語句中有一個(gè)Order By子句,功能是按一列或多列對(duì)查詢結(jié)果進(jìn)行升序或降序排序。Select查詢語句如果不用Order By子句,那么默認(rèn)為升序輸出,于是用戶就會(huì)看到最舊的發(fā)言總是在前面顯示,而最新的則跑到最后面顯示,這當(dāng)然不 是設(shè)計(jì)著所希望看到的。(2)設(shè)置顯示最新記錄的范圍由于用戶的聊天信息不斷的向聊天表追加新的內(nèi)容,數(shù)據(jù)庫將會(huì)變得越來越大。為了獲得較快的信息讀取和顯示 速度,用戶不可能也不必要讀取全部的聊天信息并將這些信息顯示出來,秩序要設(shè)計(jì)看到最新的N句話,比如最新的50句話就夠了。每當(dāng)一個(gè)新的用戶進(jìn)入聊天室后,系統(tǒng)應(yīng)當(dāng)將用戶顯示在在線聊天室名單中,并將當(dāng)前用戶的顏色以不同于其他用戶的顏色顯示。 在本程序中最為關(guān)鍵的就是怎樣實(shí)現(xiàn)將當(dāng)前用戶的顏色以不同于其他用戶的顏色顯示,這里是通過將在在線用戶表中的名字字段和session(“user”)獲得的用戶名進(jìn)行比較,在比較的循環(huán)中,如果某個(gè)記錄的名字和當(dāng)前用戶的名字一致時(shí),就將該用戶在在線名單中以紅色表示,而其他的用戶以黑色表示[7]。由于在線用戶也需要不斷的自動(dòng)刷新,所以程序中同樣也設(shè)置自動(dòng)刷新的功能。 當(dāng)用戶離開聊天室的時(shí)候,除了讓頁面中顯示相應(yīng)地離開信息,還應(yīng)當(dāng)實(shí)現(xiàn)將用戶從聊天室的在線名單中刪除。例如,用戶“天使”準(zhǔn)備離開聊天室,點(diǎn)擊[離開聊天室]按鈕,用戶可以看到管理員發(fā)送的離開提示,并且更新在線用戶的名單。用于實(shí)現(xiàn)用戶離開聊天室的程序段如下所示:sql=select top 1 * from chatinfo order by puttime asc sql,conn,0,3rs(saycontent)=span class=emtxtamp。session(userid)amp。/span離開了聊天室,歡迎下次再來!rs(ispublic)=truers(puttime)=now()這里比較關(guān)鍵的一個(gè)技術(shù)就是,當(dāng)用戶離開聊天室后怎樣動(dòng)態(tài)地更新顯示聊天室中在線的名單。程序中誰了一個(gè)session(“user”)對(duì)象,用于存儲(chǔ)用戶的姓名信息。當(dāng)用戶沒有退出聊天室之前,其中一直存儲(chǔ)用戶的姓名信息。如果用戶點(diǎn)擊了[離開聊天室]按鈕,首先執(zhí)行SQL刪除命令將當(dāng)前用戶從在線用戶表中刪除。當(dāng)刪除了當(dāng)前用戶在在線用戶表中的記錄后,將session(“user”)對(duì)象的值清空,以便將來動(dòng)態(tài)地更新聊天室中在線的名單[6]。 數(shù)據(jù)庫在一個(gè)信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)設(shè)計(jì)的優(yōu)勢(shì)將直接對(duì)應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響。設(shè)計(jì)數(shù)據(jù)庫系統(tǒng)時(shí)應(yīng)該首先充分了解用戶各個(gè)方面的需求,包括現(xiàn)有的以及將來可能增加的需求。本系統(tǒng)設(shè)計(jì)采用了Access 數(shù)據(jù)庫設(shè)計(jì)。,用來存儲(chǔ)聊天者發(fā)言的信息、用戶的信息以及在線用戶的信息[7]。以下是數(shù)據(jù)庫的連接設(shè)計(jì),本系統(tǒng)的數(shù)據(jù)庫連接采用了OLE DB數(shù)據(jù)庫連接字符串的顯示定義,這樣做的好處在于,使用DSN 數(shù)據(jù)源實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的訪問要經(jīng)過額外的軟件層來完成,而使用連接字符串可以直接實(shí)現(xiàn)這種連接,代碼如下[8]:dim conn,rs,sqldbpath=(chatdb/)set conn=() PROVIDER=。data source=amp。dbpathset rs=()說明:(1)定義數(shù)據(jù)庫的相對(duì)路徑和數(shù)據(jù)庫的驅(qū)動(dòng)程序方法如下[9];dbpath=(chatdb/)set conn=() PROVIDER=。data source=amp。dbpath(2)定義一個(gè)數(shù)據(jù)庫對(duì)象的方法如下;Set Conn=()(3)定義數(shù)據(jù)庫打開的方法如下; Connstr其中 Connstr 確定了數(shù)據(jù)庫文件的路徑和數(shù)據(jù)庫連接使用的驅(qū)動(dòng)程序;Conn的含義是定義了一個(gè)變量用來存放數(shù)據(jù)庫連接所創(chuàng)建的對(duì)象; Connstr語句則真正實(shí)現(xiàn)了數(shù)據(jù)庫的連接[10]。第5章 網(wǎng)站測(cè)試與性能分析設(shè)計(jì)測(cè)試方案是測(cè)試階段的關(guān)鍵技術(shù)問題。在軟件開發(fā)的初期使用白盒測(cè)試技術(shù)進(jìn)行單元測(cè)試,而在開發(fā)的后期著重對(duì)軟件的功能進(jìn)行測(cè)試因此采用黑盒測(cè)試技術(shù)。在初期每做完一個(gè)單元都進(jìn)行了測(cè)試,服務(wù)器端與客戶端建立好連接以后進(jìn)入可視化界面,如果測(cè)試新建用戶功能則點(diǎn)擊新建按扭輸入數(shù)據(jù),向服務(wù)器提交信息,如果出現(xiàn)預(yù)期的結(jié)果并返回icqno值說明該單元成功不必進(jìn)行調(diào)試,如果出錯(cuò)則進(jìn)入調(diào)試階段,其他單元做相似的處理[11]。在測(cè)試的階段遇到了很多問題,起初建立服務(wù)器與客戶端連接時(shí)先運(yùn)行了客戶端后運(yùn)行服務(wù)器以至于無法連接不能登上登錄界面,經(jīng)過思考先運(yùn)行服務(wù)器就行了,新建用戶時(shí)也出現(xiàn)了注冊(cè)信息寫不進(jìn)數(shù)據(jù)庫,拋出false new異常,經(jīng)過調(diào)試發(fā)現(xiàn)是JDBC連接數(shù)據(jù)庫的加載數(shù)據(jù)庫驅(qū)動(dòng)錯(cuò)誤,經(jīng)過細(xì)心調(diào)試也終于實(shí)現(xiàn)了新建用戶功能。我在編寫完每一個(gè)模塊后,都進(jìn)行測(cè)試與調(diào)試,尤其在更新用戶信息時(shí)遇到了很大的問題,當(dāng)重復(fù)加同一個(gè)好友時(shí)不能提示信息并進(jìn)行覆蓋,更新沒有做到當(dāng)好友信息修改了以后,使好友信息自動(dòng)在用戶端改正。在設(shè)計(jì)后期主要進(jìn)行功能測(cè)試,輸入以有的icqno和不存在的icqno分別進(jìn)行測(cè)試觀察結(jié)果是否與預(yù)期結(jié)果相符并做相應(yīng)的處理。性能方面看軟件的運(yùn)行速度,如果速度過慢就應(yīng)該分析一下系統(tǒng)的整體設(shè)計(jì)是否冗余過大并進(jìn)行相應(yīng)的處理,做去除重復(fù)語句等處理。設(shè)計(jì)后期的功能測(cè)試,用戶登錄,新建用戶,查看好友資料,直接加友模塊都已實(shí)現(xiàn),但是發(fā)送接收消息還不穩(wěn)定,發(fā)送消息只能傳送字母和數(shù)字,不能傳送漢字能發(fā)送但接收到了的有的漢字正確有的是亂碼,這一點(diǎn)讓我很困惑,接收信息有時(shí)會(huì)顯示陌生人來信息,而不能讀傳來了信息。測(cè)試得出來了結(jié)果對(duì)以后的開發(fā)是非常寶貴的經(jīng)驗(yàn),經(jīng)過仔細(xì)的調(diào)試、標(biāo)識(shí)把錯(cuò)誤改正記錄下來,這些記錄是我們?nèi)蘸箝_發(fā)的重要經(jīng)驗(yàn)總結(jié)。白盒測(cè)試與黑盒測(cè)試對(duì)我們測(cè)試我們的設(shè)計(jì)是非常有效可行的測(cè)試方法,選定一些數(shù)據(jù)進(jìn)行相應(yīng)的測(cè)試是最簡(jiǎn)單和最使用的,也是白盒,黑盒測(cè)試的核心[12]。模塊測(cè)試也叫單元測(cè)試,目的是保證每一個(gè)模塊作為一個(gè)單元能正確運(yùn)行,本測(cè)試所發(fā)現(xiàn)的往往是編碼和詳細(xì)設(shè)計(jì)的錯(cuò)誤,主要評(píng)價(jià)模塊的下述五個(gè)特點(diǎn):模塊接口、 局部數(shù)據(jù)結(jié)構(gòu)、重要的執(zhí)行路徑、出錯(cuò)處理通路、影響上述各方面特性的邊界條件。模塊測(cè)試主要由代碼審查和軟件測(cè)試兩部分組成。集成測(cè)試包括系統(tǒng)測(cè)試和子系統(tǒng)測(cè)試。集成測(cè)試是組裝軟件的系統(tǒng)技術(shù),主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。集成測(cè)試有兩種方法:非漸增式和漸增式,但比較而言,漸增式方法比較好,因?yàn)椋壕帉懙臏y(cè)試軟件較少,開銷較小。較早地發(fā)現(xiàn)模塊間的接口錯(cuò)誤。錯(cuò)誤位置容易判斷。測(cè)試更徹底。因此,本系統(tǒng)集成測(cè)試采用漸增式測(cè)試中的混合法,即對(duì)軟件結(jié)構(gòu)中較上層使用自頂而下的測(cè)試方法,而對(duì)軟件結(jié)構(gòu)中較下層,使用的是自底向上方法,兩者結(jié)合,這是對(duì)模塊較多時(shí)測(cè)試的一種折衷方法。驗(yàn)收測(cè)試這一步是驗(yàn)證軟件的有效性。目的是向未來的用戶表明系統(tǒng)能夠象預(yù)定的那樣工作,驗(yàn)收測(cè)試一般使用黑盒測(cè)試法,驗(yàn)收測(cè)試有兩種可能的結(jié)果如下[13]:功能和特性與用戶的要求有差距。功能和性能與用戶要求一致,軟件是可以接受的。這個(gè)階段發(fā)現(xiàn)的問題往往和需求分析階段的差距有關(guān)。所謂平行運(yùn)行就是同時(shí)運(yùn)行。新開發(fā)出來的系統(tǒng)和將被它取代的舊系統(tǒng),以便比較新舊兩個(gè)系統(tǒng)的處理結(jié)果。目的有:可以在準(zhǔn)生產(chǎn)環(huán)境中運(yùn)行新系統(tǒng)而有不冒風(fēng)險(xiǎn);用戶能有一段熟悉新系統(tǒng)的時(shí)間;可以驗(yàn)證用戶指南和使用手冊(cè)之類的文檔;能夠以準(zhǔn)生產(chǎn)模式對(duì)新系統(tǒng)進(jìn)行全負(fù)荷測(cè)試,可以用測(cè)試結(jié)果驗(yàn)證性能指標(biāo)。以下以管理員登錄為例描述模塊測(cè)試過程[13]:用例名稱:管理登錄測(cè)試基本描述:通過登錄擁有網(wǎng)站的管理權(quán)限。測(cè)試方案:分別使用不同的登錄方法進(jìn)行登錄,從而查看系統(tǒng)是否相應(yīng)的錯(cuò)誤和成功提示。用正確密碼登錄已存在賬號(hào);用錯(cuò)誤密碼登錄已存在賬號(hào); 用不存在賬號(hào)登錄; 賬號(hào)或密碼未空。 輸入數(shù)據(jù): 使用用戶名 admin 密碼 admin 登錄; 使用用戶名 admin 密碼 1 登錄; 使用用戶名 abc 密碼 1 登錄; 不填寫用戶名和密碼。 預(yù)期結(jié)果: 第一組測(cè)試身份驗(yàn)證成功,進(jìn)入管理功能界面 第二組測(cè)試提示“用戶名或密碼錯(cuò)誤!”,返回登錄界面。 第三組測(cè)試提示“用戶名或密碼錯(cuò)誤!”,返回登錄界面。第四組測(cè)試提示“請(qǐng)輸入用戶!” 及“請(qǐng)輸入密碼!”,返回登錄界面。 測(cè)試成果:和預(yù)期結(jié)果一樣,通過測(cè)試狀態(tài),測(cè)試成功! 軟件維護(hù)是軟件生命周期的最后一個(gè)階段,處于系統(tǒng)投入生產(chǎn)性運(yùn)行以后的時(shí)期中,所謂軟件維護(hù)就是在軟件已經(jīng)交付使用之后,為了改正錯(cuò)誤或滿足新的需要而修改軟件的過程。軟件的維護(hù)有適應(yīng)性維護(hù);完善性維護(hù);改正性維護(hù);預(yù)防性維護(hù)??偨Y(jié)在本系統(tǒng)的開發(fā)過程中,由于本人在知識(shí)、經(jīng)驗(yàn)方面都存在著不足。因此,該系統(tǒng)必然會(huì)存在一些缺陷和不足。因?yàn)閷?duì)網(wǎng)絡(luò)聊天工具整個(gè)流程熟悉的不夠透徹,在需求分析時(shí)未能做到完全滿足用戶的需求,只能進(jìn)行簡(jiǎn)單的通信,系統(tǒng)有時(shí)還不穩(wěn)定。這些弊端值得我進(jìn)一步研究。盡管本管理系統(tǒng)存在著很多不足,但其功能全面、易于日后程序更新、數(shù)據(jù)庫管理容易、界面友好、操作方便、效率高、安全性好等優(yōu)點(diǎn)是本聊天系統(tǒng)所必需的,可以作為公司、企業(yè)內(nèi)部即時(shí)通信的需要,還可以作為好友之間聯(lián)系的有效溝通渠道,人們能用它傳遞自己的心情,給生活帶來了效率和便利。在日后的學(xué)習(xí)中,我們將在以前的基礎(chǔ)上,使這個(gè)聊天系統(tǒng)更加的完善,不僅可以傳送文字消息,還可以傳送視頻、語音、圖片等。使聊天工具不僅成為聊天的工具,還可以向著更寬更廣的方向發(fā)展,滿足娛樂、生活、學(xué)習(xí)的需要。把最前端的信息告訴使用它的人。在整個(gè)開發(fā)過程中,體會(huì)到了模式與體系的概念以及程序的思維法式,這不僅完善了我的編程思想,而且給我的生活帶來了啟示無論做什么事情都要有程序的概念,按部就班的做事情就會(huì)很有頭緒,做事之前要做系統(tǒng)分析,總體設(shè)計(jì),然后詳細(xì)設(shè)計(jì),最后實(shí)踐,在實(shí)踐中證實(shí)自己。致謝在論文即將完成之際,我的心情無法平靜,從開始進(jìn)入課題到論文的順利完成,有多少可敬的師長(zhǎng)、同學(xué)、朋友給了我無言的幫助,在這里請(qǐng)接受我誠摯的謝意!首先感謝我的指導(dǎo)老師張媛媛老師,她嚴(yán)謹(jǐn)細(xì)致、一絲不茍的作風(fēng)一直是我工作、學(xué)習(xí)中的榜樣。感謝授課老師課上對(duì)我們的教導(dǎo),你們豐富的授課內(nèi)容拓寬了我的視野,讓我能更順利的完成這篇文章;感謝我的同學(xué)們,你們不僅讓我感受到友情的力量,也讓我感覺到了生活的愉悅,通過課堂討論學(xué)到的思維方式將使我受益終生。 最后,我要向我的家人表示深深的謝意。你們的理解、支持、鼓勵(lì)和鞭策催我更加上進(jìn)我竭盡全力的努力,更希望的是能夠讓你們高興和滿意。你們的情感永遠(yuǎn)都是我上進(jìn)的不竭的動(dòng)力源泉。這些時(shí)光會(huì)慢慢的沉淀下來,但無論何時(shí),我想到這段歲月,都如同是看到一枚珍藏已久的夾在書里發(fā)黃的書簽,永遠(yuǎn)都是那么璀璨、那么絢爛。參考文獻(xiàn)[1] 劉瑞新,ASP編程基礎(chǔ)及應(yīng)用教程,機(jī)械工業(yè)出版社,出版日期:2004729 . [2] 陳建偉,李美軍,施建強(qiáng),ASP動(dòng)態(tài)網(wǎng)站開發(fā)教程(第二版),清華大學(xué)出版社,出版日期:200511. [3] 鄭阿奇,ASP程序設(shè)計(jì)教程,機(jī)械工業(yè)出版社,出版日期:2005830. [4] 黃斯偉,HTML完全使用詳解,人民郵電出版社,出版日期:200615.[5] 趙增敏,ASP動(dòng)態(tài)網(wǎng)頁設(shè)計(jì),電子工業(yè)出版社,出
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1