姚惠英 王海霞 呂 楠 侯文明
(中石化勝利石油管理局測(cè)井公司 山東 東營(yíng) 257000)
即時(shí)商務(wù)通訊軟件初探
姚惠英 王海霞 呂 楠 侯文明
(中石化勝利石油管理局測(cè)井公司 山東 東營(yíng) 257000)
即時(shí)通訊在網(wǎng)絡(luò)高速發(fā)展的今天已經(jīng)成為人們通過(guò)網(wǎng)絡(luò)進(jìn)行交流的主要方式之一,與Email相比,它具有雙向互動(dòng)性和即時(shí)性。現(xiàn)在已經(jīng)有多種比較流行的即時(shí)通訊軟件,諸如QQ,MSN等,但都是基于C/S模式的,需要下載客戶端進(jìn)行安裝,用戶名、聊天記錄等也是存放在本地機(jī)器上,在安全性和方便性上略有所不便。B/S(瀏覽器/服務(wù)器模式)是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種改進(jìn),極大的方便了用戶之間的通訊和交友。使用UML和面向?qū)ο蟮姆治觥⒃O(shè)計(jì)方法完成一個(gè)通過(guò)IE,F(xiàn)ireFox等瀏覽器直接完成客戶端的登錄、數(shù)據(jù)傳輸,狀態(tài)更新、兩人以及多人的文字聊天等功能。本系統(tǒng)具有一個(gè)良好的結(jié)構(gòu),按照軟件工程的思想和流程完成的實(shí)現(xiàn)了基本的Web通訊功能,并添加了聊天記錄保存與刪除等附屬功能。
B/S;網(wǎng)絡(luò);Web
隨著Internet的飛速發(fā)展以及www技術(shù)的廣泛應(yīng)用,以Web技術(shù)為核心的信息交流平臺(tái)已顯示出其強(qiáng)大的生命力,正越來(lái)越受到用戶的歡迎。使任何一個(gè)組織甚至個(gè)人都能提供即時(shí)通信服務(wù),而且任何組織或個(gè)人提供的即時(shí)通信服務(wù),都能夠無(wú)障礙的使用與其它組織或者個(gè)人提供的即時(shí)通信服務(wù)的用戶進(jìn)行溝通。它能實(shí)現(xiàn)快速人際交流、數(shù)據(jù)共享,從而提高了效率和生產(chǎn)力。Web版即時(shí)通訊沒(méi)有障礙的在Blog、部落、社區(qū)、論壇之間切換,讓用戶有了更好的體驗(yàn)。因此,研究Web版的即時(shí)通訊對(duì)于企業(yè)和個(gè)人意義重大。
用戶首先需要登錄,登錄后來(lái)管理在線用戶;然后選擇聊天者。發(fā)送聊天信息,接受聊天信息,刪除聊天者,退出聊天窗口等這幾大模塊組成。系統(tǒng)要有一個(gè)完整的體系結(jié)構(gòu),通過(guò)瀏覽器來(lái)完成整個(gè)的聊天過(guò)程。Web即時(shí)通訊系統(tǒng)的最終目標(biāo)是設(shè)計(jì)一個(gè)基于B/S模式的IM軟件,可以通過(guò)IE,fireFox等瀏覽器直接完成客戶端的登錄、數(shù)據(jù)傳輸、在線好友信息管理、狀態(tài)更新、兩人以及多人的文字聊天等功能。

圖1
客戶是所有要求的源。網(wǎng)頁(yè)客戶端負(fù)責(zé)創(chuàng)建XML格式的請(qǐng)求,并把它們發(fā)送到本地服務(wù)器。本系統(tǒng)采用的是B/S架構(gòu),用戶可以在任何地方進(jìn)行操作,無(wú)須下載安裝專門的軟件,方便用戶隨時(shí)隨地登錄系統(tǒng),進(jìn)行即時(shí)交流。
服務(wù)器負(fù)責(zé)處理客戶發(fā)送來(lái)的請(qǐng)求,為本地客戶提供完全的服務(wù);接收來(lái)自網(wǎng)頁(yè)客戶端發(fā)來(lái)的XML格式的數(shù)據(jù)流;對(duì)收到的數(shù)據(jù)進(jìn)行處理,并向網(wǎng)頁(yè)客戶端返回響應(yīng)結(jié)果;把需要發(fā)送服務(wù)器的消息轉(zhuǎn)發(fā)給服務(wù)器,并接收來(lái)自服務(wù)器的響應(yīng);如網(wǎng)頁(yè)客戶端的請(qǐng)求需調(diào)用Web服務(wù),則調(diào)用相應(yīng)的Web服務(wù),并接收來(lái)自Web服務(wù)的響應(yīng)。Ajax是使用客戶端腳本與Web服務(wù)器交換數(shù)據(jù)的Web應(yīng)用開(kāi)發(fā)方法。
數(shù)據(jù)庫(kù)的設(shè)計(jì)過(guò)程如圖所示。在數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程中,需求分析和概念設(shè)計(jì)可以獨(dú)立于任何數(shù)據(jù)庫(kù)管理系統(tǒng)進(jìn)行。邏輯設(shè)計(jì)和物理設(shè)計(jì)與具體的數(shù)據(jù)庫(kù)管理系統(tǒng)密切相關(guān)。依據(jù)概念數(shù)據(jù)庫(kù)設(shè)計(jì)從中提取出重要的信息進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)。概念數(shù)據(jù)庫(kù)模式、邏輯數(shù)據(jù)庫(kù)設(shè)計(jì)、物理數(shù)據(jù)庫(kù)設(shè)計(jì)、物理數(shù)據(jù)庫(kù)模式。
建立名稱為pojaa_chat_on_web的數(shù)據(jù)庫(kù),建立tblmembers數(shù)據(jù)表:用于存放用戶的用戶名信息。tblonlinestate數(shù)據(jù)表:用于存放當(dāng)前在線的用戶對(duì)象。tblchatlogs數(shù)據(jù)表:用于存放聊天者未讀的信息內(nèi)容以及發(fā)送者接受者的聊天對(duì)象。
防止未授權(quán)用戶惡意刪除進(jìn)行破壞或擅自改變數(shù)據(jù),采用審核技術(shù)監(jiān)視用戶存取數(shù)據(jù)。采用以下措施進(jìn)行保障數(shù)據(jù)庫(kù)的安全性:謹(jǐn)慎使用數(shù)據(jù)庫(kù)的權(quán)限,不濫賦給他人權(quán)限;使用較為復(fù)雜的數(shù)據(jù)庫(kù)密碼;做好數(shù)據(jù)庫(kù)的備份;對(duì)于客戶端發(fā)送到數(shù)據(jù)庫(kù)中的信息進(jìn)行加密。
用戶輸入網(wǎng)址后,打開(kāi)網(wǎng)頁(yè)客戶端。用戶向服務(wù)器登錄或注冊(cè)時(shí),通過(guò)會(huì)話(Session)類發(fā)送到服務(wù)器,同時(shí)創(chuàng)會(huì)話。Web客戶端主界面顯示當(dāng)前在線的用戶。客戶端解析從服務(wù)器接收到的XML流,以及將自身的消息發(fā)送給服務(wù)器,同時(shí)顯示相應(yīng)的消息、Web對(duì)話框等界面;用戶可以通過(guò)單擊在線用戶名,彈出Web聊天窗口與用戶聊天,可以增加多面在線用戶。
網(wǎng)頁(yè)客戶端直接面對(duì)用戶的操作,對(duì)用戶做出的動(dòng)作進(jìn)行即時(shí)的響應(yīng),以滿足用戶即時(shí)通信的需求。將信息組合為XML流的形式發(fā)送給服務(wù)器即可。
網(wǎng)頁(yè)客戶端在將本地用戶的操作信息以XML流的格式發(fā)送給服務(wù)器后,等待接收從服務(wù)器返回的響應(yīng)結(jié)果。
登錄驗(yàn)證功能主要是對(duì)試圖登錄的客戶進(jìn)行驗(yàn)證。如果用戶信息和數(shù)據(jù)庫(kù)中的信息匹配,則將用戶的ID等信息發(fā)送給服務(wù)器,并將驗(yàn)證結(jié)果返回給網(wǎng)頁(yè)客戶端。
本地服務(wù)器首先通過(guò)登錄的用戶名為參數(shù)檢索出該用戶名對(duì)應(yīng)的ID,將該ID組織成XML流發(fā)送給服務(wù)器,然后本地服務(wù)器從查詢本地?cái)?shù)據(jù)庫(kù)得到的用戶信息結(jié)果中,根據(jù)用戶名查詢他們的在線狀態(tài)。結(jié)合服務(wù)器返回的XML流,統(tǒng)一發(fā)回給客戶端。
該功能的實(shí)現(xiàn)完成了各用戶之間的即時(shí)通信的功能。本地服務(wù)器接收網(wǎng)頁(yè)客戶端的消息請(qǐng)求,并判斷該請(qǐng)求的發(fā)送對(duì)象。如果是本地用戶,判斷該用戶是否在線,如在線立即發(fā)送消息請(qǐng)求,否則保存請(qǐng)求信息,當(dāng)用戶上線時(shí)發(fā)送給用戶。
本系統(tǒng)是用NetBeans6.5作為開(kāi)發(fā)工具,基于MySQL數(shù)據(jù)庫(kù)管理的一個(gè)Web即時(shí)通訊系統(tǒng),本系統(tǒng)并不追求功能是多么的強(qiáng)大,但基本功能是較全面的。具有以下六大特點(diǎn):界面美觀,操作方便;使用瀏覽器登錄系統(tǒng);支持在線用戶列表顯示功能;支持文本的發(fā)送與接受;支持表情和字體的設(shè)置與選擇;支持聊天記錄保存于刪除。
[1]高英,石文華.php數(shù)據(jù)庫(kù)開(kāi)發(fā)基礎(chǔ)與應(yīng)用[M].人民郵電出版社,2006,1.
[2]閃四清.數(shù)據(jù)庫(kù)管理[M].北京希望電子出版社,2002,12.
周娜]