丁琳鄭源顧磊韓更生
(1.河海大學(xué)水利水電工程 江蘇 南京 210098;2.河海大學(xué)能源與動力學(xué)院 江蘇 南京 210098;3.江蘇省連云港東??h水務(wù)局 江蘇 連云港 222300;4.河海大學(xué)能源與動力學(xué)院 江蘇 南京 210098)
東??h地處沂沭泗流域最下游,境內(nèi)地形復(fù)雜,西高東低,西部丘陵,中部崗地,東部圩洼。多年平均降雨量879.5mm,其中70%~80%的降水集中在7月~8月。新中國成立以來,興建了大量的水利工程,現(xiàn)有16條主要河道,8座大中型水庫,55座小型水庫,536座機(jī)電排灌站以及2萬多座大中小型建筑物等。由于縣內(nèi)水庫、河道、堤防、灌區(qū)、泵站、涵閘等水工建筑物數(shù)量眾多,管理工作所需的各種數(shù)據(jù)資料十分繁雜。隨著工程的運行和項目的建設(shè),許多水工建筑物的數(shù)據(jù)資料已較原來發(fā)生了較大變化,現(xiàn)有的資料手冊中的數(shù)據(jù)已失去使用價值。此外,由于一部分資料是記錄于各種材料紙上,且份數(shù)有限,有的甚至是孤份,不僅查閱、使用不方便,而且極易流失、丟散和損壞,為此,每年都需花費一定的人力、物力和財力進(jìn)行整理、匯編及保存等。為解決東??h水資源管理中存在的問題,建設(shè)合理的東??h水資源信息化管理系統(tǒng)就顯得十分必要。鑒于此,本文采用B/S模式,系統(tǒng)集成和數(shù)據(jù)庫連接技術(shù),建立了東??h水資源信息管理系統(tǒng),可使管理者迅速地了解和掌握東??h水資源的情況,及時做出決策,有利于水資源合理配置【1】。
東??h水資源信息管理系統(tǒng)采用B/S系統(tǒng)架構(gòu),搭建灌區(qū)信息化的應(yīng)用管理平臺。系統(tǒng)設(shè)計采用如下思路:
(1)整個管理系統(tǒng)主要由前臺顯示界面和后臺處理系統(tǒng)組成。其中前臺界面主要實現(xiàn)水資源數(shù)據(jù)在web頁面上的顯示。后臺管理系統(tǒng)主要實現(xiàn)后臺工作人員對數(shù)據(jù)的更新、添加、修改等功能的實現(xiàn)。系統(tǒng)組成見圖1。
(2)前臺顯示界面主要分工程管理、水務(wù)局機(jī)構(gòu)管理、防旱防汛、農(nóng)田水利、飲水安全、水政水資源幾大塊。其中工程管理系統(tǒng)定為主要分系統(tǒng),包括水庫、河道、涵閘、泵站、灌區(qū)等管理信息。其中分別配有詳細(xì)的圖表數(shù)據(jù)資料。
(3)后臺處理系統(tǒng)的模塊組成基本與前臺顯示的內(nèi)容相對應(yīng),主要具有更新、添加、刪除等三個功能,以便于管理人員隨時對數(shù)據(jù)進(jìn)行更新處理。后臺管理系統(tǒng)見圖2。
由于東??h水利管理系統(tǒng)所涉及的資料種類較多,有數(shù)據(jù)資料、圖表、設(shè)計圖紙以及圖片資料等。為了更好地實現(xiàn)系統(tǒng)的功能,根據(jù)不同類型的數(shù)據(jù)資料,將系統(tǒng)劃分為若干個子系統(tǒng),分別主要處理圖表資料、數(shù)據(jù)資料、圖像資料等。從而使整個系統(tǒng)實現(xiàn)了對東海縣水利局水資源資料的實時更新、實時查找、實時添加等功能。
2.1.1 ASP.NET創(chuàng)建動態(tài)網(wǎng)站
ASP.NET是在ASP的基礎(chǔ)上發(fā)展起來的,是Microsoft公司推出的新一代Active Server Pages腳本語言和新型體系結(jié)構(gòu).NET的一部分【2】,是建立在公共語言運行庫上的編程框架,使用它可在服務(wù)器上生成功能強(qiáng)大的Web應(yīng)用程序。本系統(tǒng)所采用的集成開發(fā)工具是微軟的Visual Studio2008,為開發(fā)人員提供了所有相關(guān)的工具和框架支持,幫助創(chuàng)建引人注目的、令人印象深刻并支持AJAX的Web應(yīng)用程序。開發(fā)人員能夠利用這些豐富的客戶端和服務(wù)器端框架輕松構(gòu)建以客戶為中心的Web應(yīng)用程序,這些應(yīng)用程序可以集成任何后端數(shù)據(jù)提供程序,在任何當(dāng)前瀏覽器內(nèi)運行并完全訪問ASP.NET應(yīng)用程序服務(wù)和Microsoft平臺。下圖為ASP.NET體系結(jié)構(gòu)圖3。
2.1.2 SQL數(shù)據(jù)庫
SQL(Structured Query Language),結(jié)構(gòu)化查詢語言【3】。SQL語言的主要功能就是同各種數(shù)據(jù)庫建立聯(lián)系,進(jìn)行溝通。
SQL Server 2005是一個全面的數(shù)據(jù)庫平臺,使用集成的商業(yè)智能(BI)工具提供了企業(yè)級的數(shù)據(jù)管理。SQL Server 2005數(shù)據(jù)庫引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更安全可靠的存儲功能,使您可以構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序。
在做數(shù)據(jù)庫方面,我們還考慮過使用ACCESS數(shù)據(jù)庫。但考慮到SQL數(shù)據(jù)庫空間為大型動態(tài)網(wǎng)站必備數(shù)據(jù)庫,而水利水電工程的管理是一個十分復(fù)雜繁瑣的過程,需要一個較為完善、能運行大量數(shù)據(jù)的數(shù)據(jù)庫處理系統(tǒng),又因為SQL在數(shù)據(jù)庫查詢(尤其是百萬級數(shù)據(jù))方面性能遠(yuǎn)遠(yuǎn)超過ACCESS,所以最終選擇了SQL數(shù)據(jù)庫。ACCESS一旦同時打開的用戶過多,或查詢的數(shù)據(jù)量過大,極其容易導(dǎo)致網(wǎng)站癱瘓,SQL數(shù)據(jù)庫空間很好地解決了這個問題。
安全性主要體現(xiàn)在對網(wǎng)站后臺的訪問權(quán)限上。為了防止數(shù)據(jù)的丟失和數(shù)據(jù)資料的混亂,對后臺的管理人員有特定的管理限制,在登錄后臺時需要輸入相應(yīng)的登錄密碼,如果不是授權(quán)的管理人員,則只能在前臺瀏覽相應(yīng)的網(wǎng)站頁面,不能對水資源數(shù)據(jù)進(jìn)行修改,添加,更新等操作。
對于網(wǎng)站的開發(fā),前人已經(jīng)做過很多的研究,就開發(fā)模式上來說,就有C/S結(jié)構(gòu)和B/S結(jié)構(gòu)兩種。其中C/S結(jié)構(gòu)出現(xiàn)的比較早期,技術(shù)較成熟,但是它有很多缺點,如客戶端程序的運行依賴于其應(yīng)用平臺,以及日后的維護(hù)及升級等工作過于繁瑣。因此,后來出現(xiàn)的B/S結(jié)構(gòu)模式很好地克服了這些缺點。在B/S結(jié)構(gòu)中采用了瀏覽器、Web服務(wù)器、數(shù)據(jù)庫服務(wù)器三層分布結(jié)構(gòu)【4】。其中Web服務(wù)器是系統(tǒng)的核心,負(fù)責(zé)接收并處理來自瀏覽器的Web頁請求和數(shù)據(jù)請求,并將處理后的結(jié)果送回發(fā)出請求的瀏覽器,顯示結(jié)果。在Web網(wǎng)頁開發(fā)工具方面,也有很多可以選擇的網(wǎng)頁開發(fā)工具,現(xiàn)在比較受關(guān)注的網(wǎng)頁設(shè)計技術(shù)主要有:PHP、JSP、ASP、ASP·NET等。PHP是網(wǎng)上較為流行的腳本語言,其語法借鑒了C、Java等語言,而且只需要很少的編程知識就可以使用PHP建起一個真正交互的Web站點。JSP是基于Java體系的Web開發(fā)技術(shù),它通過在傳統(tǒng)的HTML代碼中,利用HTML標(biāo)簽的擴(kuò)展,插入JSP腳本代碼,構(gòu)成JSP頁面。ASP是一種運行于Web服務(wù)器端的腳本編寫模型。它允許用戶使用許多己有的腳本語言編寫ASP應(yīng)用程序,使用起來方便、靈活。ASP.NET[5]是基于通用語言的編程框架,使用它可以在服務(wù)器端創(chuàng)建強(qiáng)大的網(wǎng)絡(luò)程序,可以使用所見即所得的HTML編輯器及其他編程工具來開發(fā)ASP·NET程序,可將設(shè)計、開發(fā)、編譯、運行都集中到一起,開發(fā)效率高。
對于數(shù)據(jù)庫的連接,本系統(tǒng)采用的是ADO·NET數(shù)據(jù)連接技術(shù)[6]。ADO·NET是一種新的數(shù)據(jù)庫訪問技術(shù),是NET Framework中用以操作數(shù)據(jù)庫的類庫的總稱,提供對Microsoft SQL Server等數(shù)據(jù)庫,以及OLEDB和XML數(shù)據(jù)源的一致訪問。ADO·NET包含了所有允許數(shù)據(jù)處理的類,是一個典型的數(shù)據(jù)庫操作容器。
ADO·NET對象模型的基本結(jié)構(gòu)圍繞Dataset和數(shù)據(jù)提供這兩個獨立的對象組。Dataset和其相關(guān)的對象組提供了一個可作為XML文檔開放的任何數(shù)據(jù)庫視圖。數(shù)據(jù)提供程序主要是作為Dataset和數(shù)據(jù)源之間的“橋梁”,它主要保證Dataset獨立于任何數(shù)據(jù)工具或數(shù)據(jù)源。一個簡單的ADO·NETDataset能夠把一大組來自不同數(shù)據(jù)庫的表封裝起來,并在它們之間維持一個一致的關(guān)系??梢园袮DO.NETDataset想象成一個完全斷開的相關(guān)的配有表、列、約束、和關(guān)系的數(shù)據(jù)庫。與數(shù)據(jù)源建立好聯(lián)機(jī)后,接下來再通過Command對象,對數(shù)據(jù)源下達(dá)索取數(shù)據(jù)的要求。自數(shù)據(jù)源取回來的數(shù)據(jù),可以放在Data Adapter對象中,或者放在Data Reader對象中。Data Adapter對象可以產(chǎn)生為Dataset對象中的一個Data Table對象,而Data Reader對象通??梢灾苯幼x取它的結(jié)果。本水利工程管理系統(tǒng)應(yīng)用ADO·NET的 System·Data和 System·DataSqlClient來訪問SQLServer數(shù)據(jù)庫。
(1)本文結(jié)合連云港東??h水務(wù)局的實例,探討了中小型水利工程管理系統(tǒng)的設(shè)計結(jié)構(gòu)和實現(xiàn)方法。該系統(tǒng)可以迅速地完成對水資源數(shù)據(jù)的搜索查詢和統(tǒng)計計算等工作,從而大大提高了工作效率,能夠及時地對水利工作中的大量數(shù)據(jù)進(jìn)行處理,從而保證了水資源管理工作的科學(xué)化、系統(tǒng)化,具有顯著的經(jīng)濟(jì)效益和社會效益。
(2)經(jīng)過一段時間的調(diào)試和實際應(yīng)用表明,東??h水資源信息管理系統(tǒng)的建立與運行使東??h水資源的管理邁上了一個新臺階,大大地提高了水資源管理建設(shè)的效率。陜西水利
[1]陳爽,郭曉亮,楊國范.基于B/S與C/S模式相結(jié)合的東港灌區(qū)信息管理系統(tǒng)[J].水電能源科學(xué),2011(5):136-138.
[2]王鳳嶺.ASP.NET程序設(shè)計實用技術(shù)[M]北京:人民郵電出版社,2005:135-178.
[3]ZhaoHui Tang,Jamie Maclennan著,鄺祝芳,焦賢龍,高升譯數(shù)據(jù)挖掘原理與應(yīng)用—SQL Server 2005數(shù)據(jù)庫[M].清華大學(xué)出版社2007:171.
[4]張文濤,常紅星.基于ASP.NET的B/S架構(gòu)下的項目管理系統(tǒng)的網(wǎng)絡(luò)安全模式設(shè)計[J].計算機(jī)科學(xué),2008,35(2):101-103,108.
[5]徐謾.ASP.NET應(yīng)用與開發(fā)案例教程[M]北京:清華大學(xué)出版社,2005:176-213.
[6]劉君等.基于B/S模式的中小型水利工程管理系統(tǒng)開發(fā)[J].水利科技與經(jīng)濟(jì),2009(12):1116-1118.