董 娜 董鴻曄* 郭江輝(沈陽藥科大學,遼寧 沈陽 110016)
.NET框架下國家基本藥物制度信息化系統(tǒng)B/S結(jié)構(gòu)模式應用研究
董 娜 董鴻曄* 郭江輝(沈陽藥科大學,遼寧 沈陽 110016)
本文結(jié)合國家基本藥物制度信息化系統(tǒng)的建設目標,闡述了系統(tǒng)開發(fā)涉及的B/S結(jié)構(gòu)模式、網(wǎng)絡架構(gòu)及安全模式及數(shù)據(jù)庫訪問等相關技術,在此基礎上提出了基于NET框架實現(xiàn)B/S三層結(jié)構(gòu)的系統(tǒng)總體架構(gòu)和應用模式。
NET框架;B/S結(jié)構(gòu);信息化;數(shù)據(jù)庫;網(wǎng)絡安全;應用模式
計算機網(wǎng)絡技術及網(wǎng)絡經(jīng)濟的崛起,加速了政府和企業(yè)信息化建設和應用的步伐。隨著我國基本藥物制度的逐步建立和實施,與其發(fā)展相適應的國家基本藥物制度信息化管理系統(tǒng)作為國民經(jīng)濟和社會信息化的重要組成部分,它會使我國醫(yī)藥衛(wèi)生事業(yè)監(jiān)測工作的管理水平、分析評價水平、信息共享度及信息安全性得到進一步提升,為政府適時有效調(diào)控經(jīng)濟運行、進行科學決策提供依據(jù),為切實抓好我國醫(yī)藥衛(wèi)生監(jiān)管工作提供技術保障[1]。
隨著面向?qū)ο蠹夹g、分層建模技術和網(wǎng)絡瀏覽器導航技術的逐步成熟,B/S模式的多層應用體系結(jié)構(gòu)得到了越來越多的應用。由于采用B/S三層結(jié)構(gòu)模式開發(fā)Web應用程序具有應用程序可擴展性、易維護性強、開發(fā)成本低、數(shù)據(jù)安全性高、業(yè)務邏輯層與數(shù)據(jù)層分離、與實際問題對應關系明確、從而簡化系統(tǒng)設計工作等諸多特點及技術優(yōu)勢,特別適合應用于具有一定規(guī)模和業(yè)務邏輯比較復雜的大型系統(tǒng)的開發(fā)需求[2]。
依據(jù)B/S模式的三層結(jié)構(gòu),.NET組件也對應著劃分為三個層次:用戶界面層、業(yè)務邏輯層和數(shù)據(jù)層。結(jié)構(gòu)模式如圖1所示。

圖1 系統(tǒng)B/S結(jié)構(gòu)框架
該架構(gòu)的技術特點是可實現(xiàn)系統(tǒng)的分布式、跨平臺應用;可實現(xiàn)系統(tǒng)的集中化管理,用戶通過瀏覽器執(zhí)行應用程序和傳遞數(shù)據(jù),其應用將以廣域網(wǎng)為基礎,易部署和易維護。
在實際的開發(fā)過程中,系統(tǒng)往往比較復雜,這樣的組件分層粒度較大、軟件的靈活性較差,因此如何構(gòu)建一個良好的架構(gòu),并分配到軟件體系結(jié)構(gòu)中是軟件開發(fā)者首先解決的問題。針對國家基本藥物制度信息化管理系統(tǒng)面向全國多級用戶、覆蓋面廣、內(nèi)外網(wǎng)并用的特點,綜合分析系統(tǒng)業(yè)務邏輯及網(wǎng)絡部署的具體實現(xiàn)問題,本系統(tǒng)采用B/S三層體系結(jié)構(gòu)模式設計,由瀏覽器、Web服務器/應用服務器、數(shù)據(jù)庫服務器組成。系統(tǒng)B/S三層體系架構(gòu)如圖.2所示。

圖2 系統(tǒng)B/S框架
在圖2中,系統(tǒng)采用三層架構(gòu)模式,將基本藥物制度信息管理系統(tǒng)的應用劃分為用戶界面層、業(yè)務邏輯層、數(shù)據(jù)管理層。三個層次中,系統(tǒng)主要功能、業(yè)務邏輯、業(yè)務規(guī)則、數(shù)據(jù)訪問、合法性校驗等工作都放在業(yè)務邏輯層進行處理。數(shù)據(jù)庫管理層主要是負責數(shù)據(jù)庫的訪問,可以訪問數(shù)據(jù)庫系統(tǒng)、二進制文件、文本文檔或是XML文檔,實現(xiàn)對數(shù)據(jù)表的選取、添加、刪除等更新操作。
隨著電子政務網(wǎng)絡模式的不斷發(fā)展和應用,網(wǎng)絡安全問題日益凸現(xiàn),其研究也變得越來越重要。一個安全、便捷的網(wǎng)絡應用環(huán)境和網(wǎng)絡安全機制,為信息提供足夠的保護,是電子政務網(wǎng)絡及企業(yè)局域網(wǎng)得以廣泛實施應用的基礎[3]。
為保證國家基本藥物制度信息化管理系統(tǒng)的安全運行,系統(tǒng)網(wǎng)絡架構(gòu)分為內(nèi)部網(wǎng)絡和外部網(wǎng)絡兩個系統(tǒng)。系統(tǒng)內(nèi)網(wǎng)采用SSL VPN代理服務器模式,系統(tǒng)外網(wǎng)即基本醫(yī)療單位及用戶,通過撥號網(wǎng)絡或DSL寬帶訪萬維網(wǎng)絡,系統(tǒng)整體網(wǎng)絡架構(gòu)設計如圖3所示。

圖3 系統(tǒng)網(wǎng)絡結(jié)構(gòu)
在圖3中,由于在防火墻和Internet連接的地方設置一個代理服務器,對于外網(wǎng)客戶端發(fā)出的請求,代理服務器將它解析轉(zhuǎn)換成HTTP請求,再發(fā)給Web服務器,因此客戶端只需配置到代理服務器的連接,代理服務器也只需要打開HTFPS的端口,客戶端就能通過代理服務器的間接連接訪問外網(wǎng)的Web服務器資源。代理服務器沒有保存任何內(nèi)網(wǎng)網(wǎng)頁的真實數(shù)據(jù),所有的靜態(tài)網(wǎng)頁或CGI程序,都保存在內(nèi)網(wǎng)的應用服務器上。因此對代理服務器的攻擊不會使得內(nèi)網(wǎng)信息遭到破壞,保證了內(nèi)網(wǎng)服務器的安全性[4]。
高效率的數(shù)據(jù)庫應用技術一直是研究熱點之一,其中數(shù)據(jù)庫應用模式經(jīng)歷了從單機向網(wǎng)絡化發(fā)展的過程。特別是B/S結(jié)構(gòu)模式的出現(xiàn),使網(wǎng)絡數(shù)據(jù)庫應用得到了充分的發(fā)展[5]。
B/S三層體系結(jié)構(gòu)將用戶界面,業(yè)務邏輯和數(shù)據(jù)庫三者完全分離開來,雖然有助于創(chuàng)建更易于維護和升級的、可伸縮性更高的應用程序,但存在一些制約三層體系結(jié)構(gòu)實際應用的因素。實現(xiàn)三層結(jié)構(gòu)面臨的一個實際困難是數(shù)據(jù)訪問。為了解決這個問題,將數(shù)據(jù)訪問從業(yè)務層中再次分離出來,這一層被稱為數(shù)據(jù)訪問層。數(shù)據(jù)訪問層提供了對各種數(shù)據(jù)庫訪問的公共接口。.NET框架技術為解決上述諸多問題提供了是最佳解決方案。
在.NET Framework數(shù)據(jù)提供程序組件中,ADO.NET技術主要包含Connection、Command、DataReader、DataAdapter、DataSet和DataTable等6個對象,可實現(xiàn)數(shù)據(jù)操作和對數(shù)據(jù)的快速訪問[7]。
數(shù)據(jù)層使用數(shù)據(jù)訪問邏輯組件是數(shù)據(jù)訪問層的最佳解決方案。在.NET框架中,數(shù)據(jù)訪問邏輯組件使用 ADO.NET執(zhí)行 SQL語句或者調(diào)用存儲過程。當系統(tǒng)執(zhí)行ASP.NET程序時,WEB服務器會自動把ASP程序代碼解釋為HTML格式的網(wǎng)頁內(nèi)容,再送到用戶端的瀏覽器顯示出來[28],其訪問流程如圖4所示。

圖4 B/S三層結(jié)構(gòu)數(shù)據(jù)庫訪問流程圖4 B/S Data Base Visit Procedure
存儲過程是SQL語句和可選控制流語句的預編譯集合,以一個名稱存儲并作為一個單元處理。存儲過程存儲在數(shù)據(jù)庫內(nèi),可通過應用程序的調(diào)用來執(zhí)行,并且允許用戶聲明的變量、條件執(zhí)行以及其他強大的編程功能。存儲過程可以包含程序流、邏輯關系和對數(shù)據(jù)庫的查詢。
本文對國家基本藥物制度信息化系統(tǒng)開發(fā)涉及的結(jié)構(gòu)模式、.NET框架、VPN網(wǎng)絡接入等技術進行了研究,在此基礎上提出了基于.NET框架的B/S三層結(jié)構(gòu)模式的系統(tǒng)總體架構(gòu)和實施方案,針對系統(tǒng)覆蓋面廣、數(shù)據(jù)交換涉密等網(wǎng)絡安全問題,提出了運用SSL VPN技術構(gòu)建系統(tǒng)運行安全機制,保證系統(tǒng)合法用戶安全登錄、內(nèi)外網(wǎng)數(shù)據(jù)安全交換和資源便捷共享及數(shù)據(jù)訪問。本系統(tǒng)的設計與應用,將為國家基本藥物制度信息化系統(tǒng)統(tǒng)的建設與應用提供模式參考和技術保障。
[1] 孫志偉.企業(yè)信息化對企業(yè)競爭力的影響[J].經(jīng)濟論壇,2011(7): 216-219.
[2] 劉京.C/S結(jié)構(gòu)與B/S結(jié)構(gòu)比較[J].黑龍江科技信息,2008(21): 84-86.
[3] 李小標.電子政務互聯(lián)互通中的資源訪問[J].控制網(wǎng)絡安全技術與應用,2006(8):69-74.
[4] 陳興剛,孟傳良.VPN及其隧道技術研究[J].電腦知識與技術,2008,3(5):879-880.
[5] 王凈.基于.NET框架的數(shù)據(jù)庫應用模式解決方案[J].艦船電子工程,2005,25(4):57-59.
[6] 李顯峰,王淵,魏聰明.基于.NET框架加密技術的安全登錄機制研究[J].電腦知識與技術,2009,5(22):6151-6152.
[7] 劉曉宇.基于.NET的數(shù)據(jù)庫訪問技術優(yōu)化研究[J].軟件導刊,2010,10(4):151-152.
[8] 梁昊.基于.NET框架的校園網(wǎng)絡報修系統(tǒng)的實現(xiàn)[J].長沙大學學報,2011,25(5):43-45.
[9] 蘭潔.ADO.NET數(shù)據(jù)庫問技術[J].電腦編程技巧與維護, 2009(22):46-47.
R197.3
C
1671-8194(2013)29-0276-02
*通訊作者:E-mail: donghy001@163.com