汪輝
摘要:網(wǎng)絡(luò)數(shù)據(jù)庫是動態(tài)網(wǎng)站的源泉,針對投票系統(tǒng)信息化、智能化的需求,本文設(shè)計了基于B/S的智能投票系統(tǒng)。該系統(tǒng)具備遠程維護、動態(tài)管理的設(shè)計思路,利用可拓展的模塊化設(shè)計方式,將多個子系統(tǒng)通過內(nèi)部標準協(xié)議遠程集成到一個平臺,管理員通過使用該系統(tǒng),可實現(xiàn)投票系統(tǒng)管理工作效率的優(yōu)化,提升管理水平。
關(guān)鍵詞:智能系統(tǒng),B/S架構(gòu),網(wǎng)絡(luò)數(shù)據(jù)庫,jsp
投票作為信息采集的重要利器,互聯(lián)網(wǎng)投票越來越受到人們的重視,傳統(tǒng)線下投票系統(tǒng)需要大量人工地推,無法實時統(tǒng)計投票結(jié)果,很難快速實現(xiàn)精準匯總,不能為內(nèi)容需求方提供一個全面、實時的決策服務(wù),也無法進行快速信息挖掘和分析,傳統(tǒng)投票系統(tǒng)已經(jīng)不能適應(yīng)新的形勢要求。
B/S架構(gòu)介紹
龐大的數(shù)據(jù)庫可能分布到不同的服務(wù)器或者網(wǎng)絡(luò)上,地理覆蓋范圍很廣。信息的發(fā)布模式主要有:
*集中管理式系統(tǒng):將全部信息集中在主服務(wù)器上,用戶通過在線方式上網(wǎng)查詢并獲取信息;
*分布式系統(tǒng):將信息分布存放于多個服務(wù)器,信息無冗余,對服務(wù)器之間的通信連接要求較高,不同機構(gòu)之間的信息交換需要完善的結(jié)算系統(tǒng);
*鏡像式系統(tǒng):是將主服務(wù)器內(nèi)的信息復制到地理上分散的訂閱服務(wù)器,用戶可以從距離最近的訂閱服務(wù)器獲取信息,節(jié)省通信資源,提高查詢速度。
基于瀏覽器/服務(wù)器模式(B/S)的數(shù)據(jù)庫遠程維護模式,使得數(shù)據(jù)庫維護人員可以在任何一臺計算機上,利用常見的瀏覽器,如工nternetExplorer或NetscaPeNavigat。r等,像瀏覽任何一個普通頁面一樣,打開數(shù)據(jù)庫維護的網(wǎng)頁,對數(shù)據(jù)庫進行插入、刪除、更新等操作,然后將操作結(jié)果通過網(wǎng)絡(luò)上傳到數(shù)據(jù)庫服務(wù)器,對數(shù)據(jù)庫進行更新。這就使得數(shù)據(jù)庫維護可以不受時間和地點的限制,非常方便。應(yīng)用程序更易于升級和維護。由于系統(tǒng)是架構(gòu)在WEB上的基于B/S體系的應(yīng)用軟件,所以系統(tǒng)的維護和升級工作均在服務(wù)器上進行,無需對客戶端進行環(huán)境配置、軟件升級,真正實現(xiàn)客戶端零維護。避免了傳統(tǒng)的C/S架構(gòu)的系統(tǒng)需要在服務(wù)器端和客戶端同時維護、維護人員東奔西跑的弊端,因而大大減輕了維護和升級的工作量。對于有異地分支機構(gòu)的單位更是能夠大大降低維護費用。B/S模式如圖l.2所示。
1.系統(tǒng)總體設(shè)計
智能投票系統(tǒng)采用B/S架構(gòu)模式,利用互聯(lián)網(wǎng)聯(lián)通,采用JSP開發(fā)實現(xiàn)可視化,利用網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù),實現(xiàn)高效的在線投票功能。系統(tǒng)軟件在server上安裝,用戶通過http瀏覽器訪問。
智能投票系統(tǒng)的的B/S架構(gòu)具有“多系統(tǒng)、一平臺”特點,可歸納為三層架構(gòu)(3-tier architecture):界面層(User Interface layer)、業(yè)務(wù)邏輯層(Business Logic Layer)、數(shù)據(jù)訪問層(Data access layer)。區(qū)分層次的目的即為了“高內(nèi)聚低耦合”的思想。在軟件體系架構(gòu)設(shè)計中,分層式結(jié)構(gòu)是最常見,也是最重要的一種結(jié)構(gòu)。微軟推薦的分層式結(jié)構(gòu)一般分為三層,從下至上分別為:數(shù)據(jù)訪問層、業(yè)務(wù)邏輯層(又或稱為領(lǐng)域?qū)樱?、表示層?/p>
表示層:位于最外層(最上層),最接近用戶。用于顯示數(shù)據(jù)和接收用戶輸入的數(shù)據(jù),為用戶提供一種交互式操作的界面。
業(yè)務(wù)邏輯層(Business Logic Layer)無疑是系統(tǒng)架構(gòu)中體現(xiàn)核心價值的部分。它的關(guān)注點主要集中在業(yè)務(wù)規(guī)則的制定、業(yè)務(wù)流程的實現(xiàn)等與業(yè)務(wù)需求有關(guān)的系統(tǒng)設(shè)計,也即是說它是與系統(tǒng)所應(yīng)對的領(lǐng)域(Domain)邏輯有關(guān),很多時候,也將業(yè)務(wù)邏輯層稱為領(lǐng)域?qū)?。例如Martin Fowler在《Patterns of Enterprise Application Architecture》一書中,將整個架構(gòu)分為三個主要的層:表示層、領(lǐng)域?qū)雍蛿?shù)據(jù)源層。作為領(lǐng)域驅(qū)動設(shè)計的先驅(qū)Eric Evans,對業(yè)務(wù)邏輯層作了更細致地劃分,細分為應(yīng)用層與領(lǐng)域?qū)?,通過分層進一步將應(yīng)用邏輯與領(lǐng)域邏輯的解決方案分離。
數(shù)據(jù)層:有時候也稱為是持久層,其功能主要是負責數(shù)據(jù)庫的訪問,可以訪問數(shù)據(jù)庫系統(tǒng)、二進制文件、文本文檔或是XML文檔。簡單的說法就是實現(xiàn)對數(shù)據(jù)表的Select,Insert,Update,Delete的操作。如果要加入ORM的元素,那么就會包括對象和數(shù)據(jù)表之間的mapping,以及對象實體的持久化。
2.系統(tǒng)詳細設(shè)計
系統(tǒng)實現(xiàn)了網(wǎng)絡(luò)上較為常用的投票功能,為調(diào)查、收集、統(tǒng)計各類用戶的意見反饋信息提供了一個方便易用的網(wǎng)上平臺。本系統(tǒng)遵循軟件工程標準,并按照軟件工程規(guī)定的流程進行項目的開發(fā)。系統(tǒng)采用b/s模式,使用jsp進行服務(wù)器端動態(tài)網(wǎng)頁的開發(fā)。
1)查看投票項介紹:用戶在投票系統(tǒng)首頁上,可以通過點擊每個投票項,從而鏈接出對投票項進行介紹的頁面。
2)投票:用戶在投票系統(tǒng)首頁上,可以通過選中每個投票項前面的單選按鈕并單擊“投票”按鈕來進行投票。
3)查看投票情況:用戶在投票系統(tǒng)首頁上,可以通過單擊“查看投票”超鏈接來查看當前的最新投票情況,包括各投票項的得票數(shù)、得票率等。
4)管理員登錄:當用戶在投票首頁上單擊“投票系統(tǒng)維護”超鏈接時,需要用戶輸入合法的用戶名和密碼,成功登陸后,可以進行系統(tǒng)維護功能。
5)管理員登錄:當用戶在投票首頁上單擊“投票系統(tǒng)維護”超鏈接時,也可點擊“新管理員申請”,進行管理員的申請工作。
6)刪除投票選型:用戶作為管理員進入系統(tǒng)維護界面后,可以通過單擊顯示在每個投票項右邊的“刪除”超鏈接來刪除對應(yīng)的投票選項。
3.結(jié)語
本系統(tǒng)是基于B/S架構(gòu)的智能投票系統(tǒng)雛形,具備遠程維護、動態(tài)管理的設(shè)計思路,利用可拓展的模塊化設(shè)計方式,將多個子系統(tǒng)通過內(nèi)部標準協(xié)議遠程集成到一個平臺,管理員通過使用該系統(tǒng),可快速實現(xiàn)主流在線投票需求,并進行跨平臺的入口展示和統(tǒng)計,降低線下成本。
參考文獻:
[1]楊學瑜,王志軍,劉同利.JSP入門與提高[M].北京:清華大學出版社,2002:93-232.
[2]申吉紅,廖學峰,余健.JSP課程設(shè)計案例精編[M].北京:清華大學出版社,2007:24-78.
[3]張曉東,高鑒偉.JSP+Oracle數(shù)據(jù)庫開發(fā)與實例[M].北京:清華大學出版社,2008:233-287