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