亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于.Net的地下水污染調(diào)查信息系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

        2015-03-02 12:16:21王瀟媛等
        軟件導(dǎo)刊 2015年1期
        關(guān)鍵詞:數(shù)據(jù)庫污染用戶

        王瀟媛等

        摘要:針對(duì)當(dāng)前地下水污染調(diào)查信息記錄過程中存在的數(shù)據(jù)錄入慢、數(shù)據(jù)共享難等問題,提出基于B/S模式的地下水污染調(diào)查系統(tǒng)的設(shè)計(jì)思路,并闡述其具體實(shí)現(xiàn)過程。系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)采用.Net Framework作為開發(fā)平臺(tái),C#作為開發(fā)語言,SQL Server作為數(shù)據(jù)庫,同時(shí)整合了Web GIS技術(shù),設(shè)計(jì)了地下水水點(diǎn)信息的數(shù)據(jù)錄入、查詢、分析、制圖、評(píng)價(jià)和報(bào)表等功能。通過實(shí)際使用該系統(tǒng)實(shí)現(xiàn)了預(yù)期目標(biāo)。

        關(guān)鍵詞:地下水污染調(diào)查;信息系統(tǒng)設(shè)計(jì);.Net;數(shù)據(jù)庫設(shè)計(jì);GIS

        DOIDOI:10.11907/rjdk.143710

        中圖分類號(hào):TP319

        文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào)文章編號(hào):16727800(2015)001008004

        0 引言

        隨著現(xiàn)代工農(nóng)業(yè)的發(fā)展和人類活動(dòng)的頻繁影響,不同種類的污染物通過各種渠道進(jìn)入地下水系統(tǒng),導(dǎo)致地下水水質(zhì)下降,特別在一些大中型城市,污染源直接威脅人們的正常生活[1]。與此同時(shí),人類對(duì)水資源的需求量日趨增長。當(dāng)前,地下水源已占全國總給水量的20%,西北地區(qū)和華北平原某些相對(duì)缺水的城市,地下水開發(fā)利用比例達(dá)到72%和66%[2]。在許多城市,地下水幾乎是唯一的供水水源。

        地下水污染調(diào)查評(píng)價(jià)是地下水污染防治的基礎(chǔ)[3],以準(zhǔn)確高效掌握地下水水質(zhì)和污染情況。本文設(shè)計(jì)了一個(gè)基于.Net的地下水污染調(diào)查信息系統(tǒng),利用現(xiàn)代信息技術(shù),為科研人員進(jìn)行地下水污染調(diào)查研究提供支撐。

        1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)

        1.1 系統(tǒng)設(shè)計(jì)目標(biāo)

        系統(tǒng)應(yīng)用GIS技術(shù)和空間數(shù)據(jù)處理技術(shù),建立一個(gè)基于.Net Framework框架的B/S 模式結(jié)構(gòu)的Web應(yīng)用程序[4]。系統(tǒng)在設(shè)計(jì)和開發(fā)過程中遵循軟件工程“時(shí)效性、易用性、可靠性、擴(kuò)展性、開發(fā)性”相統(tǒng)一的原則[5],采用三層架構(gòu)作為軟件設(shè)計(jì)框架,為系統(tǒng)功能擴(kuò)展奠定基礎(chǔ)。具體設(shè)計(jì)路線如圖1所示。

        圖1 地下水污染調(diào)查信息系統(tǒng)研究技術(shù)路線

        1.2 系統(tǒng)開發(fā)技術(shù)

        1.2.1 .Net三層架構(gòu)

        三層架構(gòu)將整個(gè)軟件框架分為“表示層—業(yè)務(wù)邏輯層—數(shù)據(jù)庫訪問層”三層,各層分工合作,實(shí)現(xiàn)數(shù)據(jù)交互[6]。其目的在于實(shí)現(xiàn)軟件開發(fā)中所要求的“高內(nèi)聚、低耦合”,采用“分而治之”的方法,將軟件功能劃分開來,從而有利于控制、延展和資源分配[7]。

        1.2.2 AJAX技術(shù)

        AJAX(Asynchronous JavaScript and XML)實(shí)現(xiàn)瀏覽器無需刷新整個(gè)頁面內(nèi)容,只需要根據(jù)用戶需求,完成網(wǎng)頁中部分控件與服務(wù)器之間的交互[8]。AJAX技術(shù)的標(biāo)準(zhǔn)化展示主要通過XHTML和CSS實(shí)現(xiàn),同時(shí)其動(dòng)態(tài)顯示和交互部分主要應(yīng)用DOM技術(shù)完成。異步數(shù)據(jù)讀取時(shí),AJAX通過XMLHttpRequest實(shí)現(xiàn),最后應(yīng)用JavaScript進(jìn)行數(shù)據(jù)綁定[9]。

        1.2.3 JQuery技術(shù)

        JQuery是輕量級(jí)JS庫[10],不僅兼容CSS3層疊樣式表,而且對(duì)主流瀏覽器也可兼容。JQuery能夠?qū)崿F(xiàn)動(dòng)畫效果,使開發(fā)人員更為簡(jiǎn)易地處理HTML Document,快速開發(fā)出交互性強(qiáng)、界面友好的Web應(yīng)用程序[11]。系統(tǒng)采用JQuery和JQuery封裝下的Easy UI架構(gòu),輔助以ASP.NET技術(shù),可大幅度優(yōu)化網(wǎng)站的前端顯示。訪問過程如圖2所示。

        圖2 JQuery前后臺(tái)處理流程

        1.2.4 WebGIS技術(shù)

        WebGIS技術(shù)簡(jiǎn)化了客戶端軟件,以瀏覽器作為客戶端應(yīng)用程序的運(yùn)轉(zhuǎn)平臺(tái),從而形成一個(gè)“客戶層—應(yīng)用層—數(shù)據(jù)庫”的三層結(jié)構(gòu)[12]。

        與傳統(tǒng)的GIS相比,WebGIS具有以下優(yōu)點(diǎn)[13]:①提高信息共享效率;②保障信息的實(shí)時(shí)性[14];③多平臺(tái)的可擴(kuò)展性;④降低系統(tǒng)成本。

        2 數(shù)據(jù)庫設(shè)計(jì)

        地下水污染調(diào)查信息系統(tǒng)數(shù)據(jù)標(biāo)準(zhǔn)依據(jù)《地下水污染地質(zhì)調(diào)查評(píng)價(jià)規(guī)范》[2]制定。主要考慮地下水資源量的分布情況、水文地質(zhì)結(jié)構(gòu)信息以及地下水環(huán)境數(shù)據(jù)等3個(gè)方面的數(shù)據(jù)結(jié)構(gòu)[16]。數(shù)據(jù)庫完成后系統(tǒng)可根據(jù)這些數(shù)據(jù)進(jìn)一步完成制圖及地下水污染評(píng)估等工作。

        依照《地下水污染地質(zhì)調(diào)查評(píng)價(jià)規(guī)范》[2],將數(shù)據(jù)庫劃分為原始資料數(shù)據(jù)庫、綜合成果數(shù)據(jù)庫、元數(shù)據(jù)庫和用戶信息庫。原始資料數(shù)據(jù)庫主要完成數(shù)據(jù)的整理、修改編輯、匯總?cè)霂斓?;綜合成果數(shù)據(jù)庫主要完成空間專題制圖等;元數(shù)據(jù)庫主要建立不同需求下的元數(shù)據(jù)記錄等;用戶信息庫則存儲(chǔ)用戶的個(gè)人信息以及記錄導(dǎo)出項(xiàng)等。

        (1)原始資料數(shù)據(jù)表。

        原始資料數(shù)據(jù)表可以分為4大類:綜合調(diào)查類、動(dòng)態(tài)數(shù)據(jù)監(jiān)測(cè)類、樣品分析測(cè)試類和綜合施工類。

        (2)綜合成果數(shù)據(jù)表。

        綜合研究成果數(shù)據(jù)庫只含有單一的屬性表,以線元及多邊形表示。

        (3)元數(shù)據(jù)表。

        根據(jù)不同需求和工作需要,可以對(duì)原始資料數(shù)據(jù)庫和綜合成果數(shù)據(jù)庫進(jìn)行元數(shù)據(jù)采集,并將采集后的元數(shù)據(jù)記錄保存到元數(shù)據(jù)表中。

        (4)用戶信息表。

        用戶信息表包含三大類:用戶登陸信息表、用戶詳細(xì)信息表和用戶導(dǎo)出項(xiàng)目表。

        3 系統(tǒng)功能設(shè)計(jì)

        系統(tǒng)主要功能模塊如圖3所示。

        圖3 系統(tǒng)功能模塊

        (1)數(shù)據(jù)管理模塊。

        包括原始數(shù)據(jù)錄入、修改、存儲(chǔ)、查詢以及對(duì)原有數(shù)據(jù)進(jìn)行備份與恢復(fù)等功能。

        (2)圖系制表模塊。

        依照用戶需求,將野外采集數(shù)據(jù)或綜合分析數(shù)據(jù),繪制成圖表。根據(jù)《地下水污染調(diào)查評(píng)價(jià)規(guī)范》[2],利用數(shù)據(jù)庫中的數(shù)據(jù),制作匯總后的圖形化數(shù)據(jù),方便用戶查看。

        (3)綜合分析模塊。

        綜合分析模塊分為地下水質(zhì)量評(píng)價(jià)和地下水污染綜合評(píng)價(jià)兩個(gè)子模塊。地下水質(zhì)量評(píng)價(jià)方法一般采用水質(zhì)模糊評(píng)價(jià)方法[17],水質(zhì)評(píng)價(jià)標(biāo)準(zhǔn)采用《地下水質(zhì)量標(biāo)準(zhǔn)》[18]。地下水污染綜合評(píng)價(jià)方法國內(nèi)目前還沒有統(tǒng)一標(biāo)準(zhǔn)[19]。

        首先通過原始資料數(shù)據(jù)表查找符合條件的數(shù)據(jù)記錄;然后根據(jù)地下水污染調(diào)查評(píng)價(jià)規(guī)范,對(duì)已查數(shù)據(jù)進(jìn)行進(jìn)一步分析;最后將綜合成果記錄、存儲(chǔ)到元數(shù)據(jù)表中。

        (4)數(shù)據(jù)統(tǒng)計(jì)模塊。

        數(shù)據(jù)統(tǒng)計(jì)模塊主要用于統(tǒng)計(jì)和整合原始數(shù)據(jù)表和元數(shù)據(jù)表中的所有數(shù)據(jù)。使用.Net Framework平臺(tái)的COM組件來實(shí)現(xiàn)統(tǒng)計(jì)功能[20],將數(shù)據(jù)以Excel文件的形式發(fā)送到客戶端。

        (5)用戶模塊。

        將所有用戶分為兩組:普通用戶組和管理員用戶組。普通用戶可以使用系統(tǒng)的大部分功能,包括對(duì)原始數(shù)據(jù)的錄入、查詢、修改、備份、恢復(fù)以及對(duì)數(shù)據(jù)進(jìn)行分析和制圖等,但不能查看其他用戶錄入的數(shù)據(jù)。

        管理員組除了普通用戶組的功能之外,還可以查看所有用戶錄入的數(shù)據(jù),并且負(fù)責(zé)對(duì)整個(gè)數(shù)據(jù)庫進(jìn)行維護(hù)。管理員可限定普通用戶的操作權(quán)限。

        綜合上述思路,系統(tǒng)整體框架圖如圖4所示。

        圖4 地下水污染調(diào)查信息系統(tǒng)整體框架設(shè)計(jì)

        4 系統(tǒng)功能實(shí)現(xiàn)

        本系統(tǒng)中最主要的部分是客戶端同服務(wù)器端、服務(wù)器端同數(shù)據(jù)庫的交互,需要使用大量的數(shù)據(jù)庫操作。同時(shí)為了優(yōu)化用戶體驗(yàn),提高輸入輸出效率,還在系統(tǒng)中加入了文件導(dǎo)入導(dǎo)出技術(shù)和查詢時(shí)的模糊查找功能。

        4.1 讀取Excel文件數(shù)據(jù)

        系統(tǒng)采用OLE DB的方式將Excel中的數(shù)據(jù)讀取到DataTable。首先設(shè)定連接字符串:

        StringConnString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=; Extended Properties=Excel 8.0; HDR=No;IMEX=1;"。

        完成設(shè)定后,使用OleDbConnection打開數(shù)據(jù)連接,用GetOleDbSchemaTable獲取Excel文件中的數(shù)據(jù),最后通過OleDbDataAdapter.Fill將數(shù)據(jù)填充Dataset。具體代碼部分,如下:

        con = new OleDbConnection(ConnString);

        schemaTable =con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);

        stringtableName = schemaTable.Rows[0][2].ToString().Trim();

        cmd = new OleDbCommand(@"select * from [" + tableName + "]", con);

        da = new OleDbDataAdapter();

        da.SelectCommand = cmd;

        da.Fill(dsModel);

        con.Close();

        4.2 文件導(dǎo)出功能

        針對(duì)信息分析統(tǒng)計(jì)的導(dǎo)出功能,按照用戶要求,將數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行整合,然后以Excel文件的形式導(dǎo)出到用戶本地。具體實(shí)現(xiàn)代碼如下:

        Application excel = new Application();

        _Workbook xBk;

        _Worksheet xSt;

        excel= new ApplicationClass();

        xBk = excel.Workbooks.Add(true);

        xSt = (_Worksheet)xBk.ActiveSheet;

        foreach(DataColumn col in dv.Table.Columns)

        {

        colIndex++;

        excel.Cells[4,colIndex] = col.ColumnName;

        }

        foreach(DataRowView row in dv)

        {

        rowIndex ++;

        colIndex = 1;

        foreach(DataColumn col in dv.Table.Columns)

        {

        colIndex ++;

        }

        }

        xBk.SaveCopyAs(Server.MapPath(".")+""+this.xlfile.Text+".xls");

        ds = null;

        xBk.Close(false, null,null);

        excel.Quit();

        4.3 文本框自動(dòng)填充功能

        本文采用JQuery的AutoComplete控件。其中前后臺(tái)的交互機(jī)制,將使用ASP.NET的CallBack機(jī)制。通常,一個(gè)完整的回調(diào)過程包含以下幾個(gè)部分:①客戶端發(fā)出回調(diào)請(qǐng)求;②服務(wù)器端接收客戶端回調(diào)請(qǐng)求;③服務(wù)器端處理請(qǐng)求并回復(fù)請(qǐng)求給客戶端;④客戶端接收服務(wù)器的反饋結(jié)果并更新HTML。

        觸發(fā)回調(diào)機(jī)制,首先需要在前端頁面編寫一個(gè)JavaScript函數(shù)觸發(fā)回調(diào)請(qǐng)求,具體語法結(jié)構(gòu)如下:

        any_script_function(arg, context)

        {

        <%= ClientScript.GetCallbackEventReference(this, "arg", "ReceiveServerData", "context")%>;

        }

        利用GetCallbackEventReference(this,”arg”,”ReceiveServerData”)函數(shù),根據(jù)傳入的參數(shù),來調(diào)用實(shí)際的前臺(tái)腳本。其中this表示回調(diào)操作的控件處于當(dāng)前頁面。同時(shí),該頁面需要實(shí)現(xiàn)ICallbackEventHandler接口。此外,this參數(shù)也可以表示該頁面上某個(gè)Web控件,此時(shí)該控件需實(shí)現(xiàn)ICallbackEventHandler接口;Arg用來表示將要傳遞給RaiseCallbackEvernt的參數(shù)值;ReceiveServerData指前端頁面在回調(diào)之后將要執(zhí)行的前臺(tái)腳本。

        回調(diào)機(jī)制完成之后,頁面將把數(shù)據(jù)庫中存儲(chǔ)的數(shù)據(jù)轉(zhuǎn)化為JSON格式并賦值到AutoComplete控件,具體語法如下:

        autocomplete(url or data,[options])。

        $(function () {

        $("#" + "<%=this.控件ID%>").autocomplete({

        source: function (request, response) {

        $.ajax({

        url: "Handler1.ashx",dataType: "jsonp",

        jsonp: "callback",

        data: "p1=" + escape(request.term) + "&callback= ",

        success: function (data) {

        response($.map(data, binditem));

        }

        });

        },

        }

        5 結(jié)語

        本文使用.Net Framework 作為開發(fā)平臺(tái),C#作為開發(fā)語言,利用計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)和WebGIS技術(shù),提出設(shè)計(jì)思路和實(shí)現(xiàn)方案。依托.Net Framework作為系統(tǒng)平臺(tái),有效提高了系統(tǒng)的穩(wěn)定性,使信息交互和維護(hù)更加便捷。本文系統(tǒng)設(shè)計(jì)開發(fā)對(duì)于其它類似信息系統(tǒng)的開發(fā),具有一定借鑒意義。

        猜你喜歡
        數(shù)據(jù)庫污染用戶
        堅(jiān)決打好污染防治攻堅(jiān)戰(zhàn)
        堅(jiān)決打好污染防治攻堅(jiān)戰(zhàn)
        數(shù)據(jù)庫
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        數(shù)據(jù)庫
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        對(duì)抗塵污染,遠(yuǎn)離“霾”伏
        都市麗人(2015年5期)2015-03-20 13:33:49
        亚洲另类自拍丝袜第五页| 日本一卡二卡3卡四卡免费观影2022| 日韩精品中文一区二区三区在线| 亚洲欧洲日产国码av系列天堂| 无码av中文一区二区三区| 伊人久久五月丁香综合中文亚洲| 国产成人亚洲综合无码| 国产91福利在线精品剧情尤物| 乱色熟女综合一区二区三区| 精品一区二区三区免费播放| 精品国产v无码大片在线观看| 精品一级毛片| 日韩激情网| 国产天堂av手机在线| 99热婷婷一区二区三区| 精品视频一区二区三区日本| 国产一区高清在线观看| 久久久久久国产精品mv| 国产精品乱码在线观看| 亚洲最大av免费观看| 精品久久人妻一区二区| 亚洲精品一区二区高清| 国产av熟女一区二区三区| 亚洲日产一线二线三线精华液| 亚洲精品aa片在线观看国产| 亚洲男人天堂2017| 亚洲一级无码AV毛片久久| 久久亚洲春色中文字幕久久久综合| 国产免费操美女逼视频| 久久久国产精品| 欧美成妇人吹潮在线播放| 亚洲av之男人的天堂网站| 国产乱视频| 亚洲成aⅴ人片在线观看天堂无码| 日本二区三区视频在线观看| 久久久国产精品无码免费专区| 青青国产揄拍视频| 亚洲成色在线综合网站| 国产美女三级视频网站| 久久精品国产亚洲av日韩一| 熟妇人妻无乱码中文字幕av|