【正文】
華北電力大學(xué)科技學(xué)院本科畢業(yè)設(shè)計(jì)(論文) I 基于 Ajax 的網(wǎng)絡(luò)聊天室的設(shè)計(jì)與實(shí)現(xiàn) 摘 要 如何更好地與他人溝通是人們普遍關(guān)心的問題。人們通過網(wǎng)站可以展示產(chǎn)品,了解與用戶和合作伙伴的最新發(fā)展,交流和溝通,建立聯(lián)系和開展電子商務(wù)。在線聊天系統(tǒng)作為一個(gè)網(wǎng)站的重要組成部分,為人與人之間的交流和交往提供了一個(gè)平臺(tái)。 傳統(tǒng)的互聯(lián)網(wǎng)聊天室,以顯示在線用戶和用戶信息的實(shí)時(shí)傳送,需要定期刷新頁(yè)面。刷新頁(yè)面,不僅要占用一定的系統(tǒng)資源和網(wǎng)絡(luò)帶寬,也 會(huì)出現(xiàn) “ 白屏 ” 現(xiàn)象, 這對(duì) 良好的用戶體驗(yàn)是非常不利的。 Ajax 是 一個(gè)新的 web 應(yīng)用,使用 Ajax 技術(shù)的發(fā)展不僅解決了頁(yè) 面刷新帶來的 白屏 問題,也減少了對(duì)服務(wù)器和網(wǎng)絡(luò)傳輸?shù)呢?fù)載。 本系統(tǒng)采用了 Ajax 技術(shù),數(shù)據(jù)庫(kù)服務(wù)器端采用了 SQL Server 2021 作為數(shù)據(jù)庫(kù)的開發(fā),用 C語(yǔ)言編寫的無刷新的網(wǎng)絡(luò)聊天室。 關(guān)鍵詞 :Ajax;網(wǎng)絡(luò)聊天室;無刷新 ;異步交互華北電力大學(xué)科技學(xué)院本科畢業(yè)設(shè)計(jì)(論文) II DESIGN AND IMPLEMENTATION OF AJAXBASED CHAT ROOM Abstract How to municate better with others is the general interest. Through the website can show the products, the latest developments, exchange and munication with users and partners to establish contacts and emerce. Online chat system constitute an important part of the site, to provide a platform for exchanges and contacts between people. Traditional Inter chat rooms in order to display online users and user messages sent in real time, the need to regularly refresh the page. Page refresh not only to take up some system resources and work bandwidth, but there is also a black and white phenomenon is very detrimental to a good user experience. Ajax is a new web application, the chat room system using Ajax technology development not only solved the page refreshes bring black and white issues, but also reduce the load on the server and work transmission. The system uses the Ajax technology, database serverside SQL Server 2021 as database development, written in C refresh work chat rooms. Key Words: Ajax; Inter chat rooms; Nofresh; Asynchronous interaction華北電力大學(xué)科技學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 1 目錄 摘 要 ...................................................................... I Abstract ................................................................... II 1 緒論 ...................................................................... 1 系統(tǒng)現(xiàn)狀 ................................................................ 1 國(guó)內(nèi)外主要研究成果 ...................................................... 1 課題的主要內(nèi)容及章節(jié)安排 ................................................ 3 2系統(tǒng)開發(fā)環(huán)境和關(guān)鍵技術(shù) .................................................... 3 系統(tǒng)的開發(fā)環(huán)境 .......................................................... 4 關(guān)鍵技術(shù) ................................................................ 4 技術(shù) .......................................................... 4 Ajax 技術(shù) ............................................................. 6 Ajax 技術(shù) .................................................... 11 數(shù)據(jù)庫(kù)技術(shù) ........................................................... 11 C語(yǔ)言 ............................................................... 12 3系統(tǒng)分析與設(shè)計(jì) ........................................................... 12 系統(tǒng)分析 ............................................................... 13 聊天室功能需求分析 ................................................... 13 聊天室功能性能分析 ................................................... 13 系統(tǒng)運(yùn)行環(huán)境 ........................................................... 13 系統(tǒng)設(shè)計(jì) ............................................................... 13 系統(tǒng)結(jié)構(gòu) ............................................................. 13 實(shí)體及數(shù)據(jù)庫(kù)實(shí)現(xiàn) ..................................................... 15 后臺(tái)功能模塊 ......................................................... 15 流程圖 ............................................................... 15 客戶端與服務(wù)器端的相關(guān)設(shè)計(jì) ........................................... 16 4 系統(tǒng)實(shí)現(xiàn) ................................................................. 18 聊天界面 ............................................................... 18 登錄界面 ............................................................... 18 前臺(tái)界面 ............................................................... 19 5 系統(tǒng)測(cè)試 ................................................................. 20 測(cè)試意義 ............................................................... 20 測(cè)試目標(biāo) ............................................................... 20 華北電力大學(xué)科技學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 2 測(cè)試方法 ............................................................... 20 測(cè)試用例 ............................................................... 20 結(jié) 論 ..................................................................... 22 致 謝 ..................................................................... 24 華北電力大學(xué)科技學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 1 1 緒論 系統(tǒng)現(xiàn)狀 在人們的生活中,信息技術(shù)的飛速發(fā)展正在發(fā)生深刻變化。人與人之間的對(duì)話是不再局限于面對(duì)面,網(wǎng)上聊天室提供了信息交流的另一個(gè)地方。傳統(tǒng)的聊天室,以顯示在線用戶和用戶信息的實(shí)時(shí)傳送,需要定期刷新頁(yè)面。刷新頁(yè)面,不僅要占用一定的系統(tǒng)資源和網(wǎng)絡(luò)帶寬,也會(huì)出現(xiàn)“白屏”的現(xiàn)象,這對(duì)良好的用戶體驗(yàn)是非常不利的。而使用 Ajax技術(shù)開發(fā)的聊天室,不僅可以解決頁(yè)面刷新帶 來白屏的問題,也減少了對(duì)服務(wù)器和網(wǎng)絡(luò)傳輸?shù)呢?fù)載。 隨著互聯(lián)網(wǎng)應(yīng)用的普及, web 應(yīng)用以其良好的擴(kuò)展性、易于部署、維護(hù)方便等優(yōu)點(diǎn)逐漸成為軟件開發(fā)的主流。早期的 Web 應(yīng)用采用的是同步交互過程 【 1】 ,即用戶首先向 Web 服務(wù)器提交一個(gè)請(qǐng)求或行為呼叫,服務(wù)器接收到客戶請(qǐng)求后執(zhí)行相應(yīng)處理操作,最后向用戶返回處理結(jié)果。服務(wù)器在處理請(qǐng)求時(shí) 【 2】【 3】 ,用戶處于等待狀態(tài),有時(shí)如果超過了服務(wù)器響應(yīng)時(shí)間,甚至返回“頁(yè)面不可用”等提示。另外,當(dāng)我們只想改變頁(yè)面的部分?jǐn)?shù)據(jù)時(shí),用戶的請(qǐng)求會(huì)導(dǎo)致服務(wù)器重新返回整個(gè)頁(yè)面內(nèi)容,包括那些沒有改變 的數(shù)據(jù),這不但增加了網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)量,還影響了客戶端的響應(yīng)時(shí)間,為什么我們不能“按需”獲取數(shù)據(jù)呢 ?Ajax技術(shù)可以很好的解決上述 web 應(yīng)用中存在的問題。 Ajax 技術(shù)是 的核心之一,本質(zhì)上是一種 RIA(RichIllter Application)技術(shù)。 RIA 是指具有高度互動(dòng)性和豐富用戶體驗(yàn)的網(wǎng)絡(luò)應(yīng)用程序,它既具有消息確認(rèn)、無刷新頁(yè)面之下提供快捷的界面響應(yīng)、拖放式等桌面應(yīng)用程序的特點(diǎn),同時(shí)又具有部署簡(jiǎn)單、跨平臺(tái)等 Web 應(yīng)用程序的特點(diǎn)。 Ajax 技術(shù)提供了客戶端與服務(wù)器異步通信的能力 【 6】 ,從而使 用戶從請(qǐng)求一響應(yīng)一再請(qǐng)求 【 3】 的循環(huán)中解脫出來,同時(shí)降低了網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)量,提高了客戶端的響應(yīng)速度,改善了用戶使用體驗(yàn),使得 web應(yīng)用可以接近甚至達(dá)到類似“桌面應(yīng)用”的效果。 而 Ajax 有上述優(yōu)勢(shì),例如 Google Suggest, Gmail, Google Map 等等交互程序中都使用了異步通訊技術(shù)。不知不覺中 , Ajax 應(yīng)用程序占據(jù)了整個(gè)網(wǎng)絡(luò)的每一個(gè)角落??v觀所有的應(yīng)用程序,更好的用戶體驗(yàn)是其的共同目標(biāo) ,在瀏覽器中實(shí)現(xiàn)桌面用戶界面體驗(yàn)是 Web開發(fā)的一種趨勢(shì)。 Ajax 技術(shù)從谷歌到 IBM,甲骨文,雅虎, BEA 系統(tǒng) 公司,紅帽 , Novell公司獲得業(yè)界眾多的 IT 巨頭的支持,其快速發(fā)展是值得期待的。技術(shù)創(chuàng)新和標(biāo)準(zhǔn)化是 Ajax技術(shù)發(fā)展的必由之路,而 W3C 已成立了工作小組,專門從事 Ajax 的規(guī)范發(fā)展工作。 國(guó)內(nèi)外 主要研究成果 Ajax 技術(shù)的精髓是用異步交互替代了傳統(tǒng)的同步交互,所以當(dāng)用戶操作時(shí)間大于服務(wù)器響應(yīng)時(shí)間的時(shí)候,使用 Ajax 的效果非常明顯。而當(dāng)程序性能的瓶頸在于服務(wù)器響應(yīng)時(shí)間的時(shí)候, Ajax無法解決程序運(yùn)行緩慢的問題。 因此, Ajax 是更適合在網(wǎng)絡(luò)上的互動(dòng)頻繁輕量級(jí)的應(yīng)用程序。在 Ajax 開發(fā)的應(yīng)用程序 中 , Google 公司成功將 Ajax 技術(shù)應(yīng)用到他們的商業(yè)產(chǎn)品。 Google華北電力大學(xué)科技學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 2 地圖和 Google Suggest 都應(yīng)用了 這項(xiàng)技術(shù)。當(dāng)用戶使用谷歌地圖查看地圖(包括地圖的縮放和平移地圖),并沒有提交任何請(qǐng)求到服務(wù)器,你 就 可以瀏覽到地圖的各個(gè)部分。在這里,它是 Ajax 技術(shù)的應(yīng)用,使得地圖是不刷新的方式,但