蔡軍營
摘 要:分析瀏覽器/服務(wù)器結(jié)構(gòu)的特點,提出了基于瀏覽器/服務(wù)器結(jié)構(gòu)網(wǎng)上選用設(shè)備系統(tǒng)的基本設(shè)計思想,著重討論了用ASP.NET技術(shù)和SQL Server 2000開發(fā)網(wǎng)上選設(shè)備系統(tǒng)時的數(shù)據(jù)庫訪問技術(shù)和動態(tài)網(wǎng)頁制作技術(shù)的應(yīng)用。
關(guān)鍵詞:網(wǎng)上設(shè)備管理瀏覽器/服務(wù)器結(jié)構(gòu)ASP.NET數(shù)據(jù)庫管理系統(tǒng)
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-098X(2012)05(b)-0032-01
隨著國內(nèi)企業(yè)局域網(wǎng)的建設(shè),設(shè)備管理及使用情況匯報都在網(wǎng)上進(jìn)行。基于互聯(lián)網(wǎng)的應(yīng)用系統(tǒng)的開發(fā)正在揮著較大的作用。用戶可以通過互聯(lián)網(wǎng)完成設(shè)備咨詢、選型、維護(hù)保養(yǎng)狀況、調(diào)用、這一全過程。
通過該系統(tǒng),使用戶可以方便地在企業(yè)局域網(wǎng)上進(jìn)行網(wǎng)上設(shè)備選型調(diào)用。采用的開發(fā)工具是ASP,隨著技術(shù)的發(fā)展,制作技術(shù)和系統(tǒng)功能日趨完善。該B/S結(jié)構(gòu)的系統(tǒng)在Windows XP系統(tǒng)和VS.NET平臺下開發(fā)完成,使用C#作為ASP.NET的開發(fā)語言,SQL Server 2000作為數(shù)據(jù)庫。系統(tǒng)有較高的安全性和較好的性能。
1 系統(tǒng)總體設(shè)計
如圖1,數(shù)據(jù)庫是此類系統(tǒng)的核心,系統(tǒng)中所有的信息都存儲在數(shù)據(jù)庫中,在所有ASP.NET頁面中通過ADO.NET與數(shù)據(jù)庫連接,操作數(shù)據(jù)庫中的數(shù)據(jù),從而實現(xiàn)所有需要的功能。數(shù)據(jù)庫軟件有很多,如Microsoft SQL Server 2000等。本系統(tǒng)中數(shù)據(jù)庫采用Microsoft SQL Server 2000作為數(shù)據(jù)庫工具。數(shù)據(jù)庫是網(wǎng)站的核心,數(shù)據(jù)庫設(shè)計的合理與否對網(wǎng)站的建設(shè)有著至關(guān)重要的影響。一個良好的數(shù)據(jù)庫開發(fā)過程一般是先系統(tǒng)分析,再邏輯設(shè)計,然后物理實現(xiàn)。系統(tǒng)分析中分析數(shù)據(jù)庫用戶需求,并畫出E-R圖直觀地表示出數(shù)據(jù)庫系統(tǒng)的需求。邏輯設(shè)計中根據(jù)系統(tǒng)分析設(shè)計的一個關(guān)系模型。物理設(shè)計為邏輯設(shè)計中的數(shù)據(jù)模型選取一個最合理的應(yīng)用環(huán)境的物理結(jié)構(gòu),通常選取一個常用數(shù)據(jù)庫軟件,用數(shù)據(jù)庫軟件創(chuàng)建與邏輯設(shè)計中數(shù)據(jù)模型對應(yīng)的數(shù)據(jù)庫。
1.1 數(shù)據(jù)庫邏輯設(shè)計
數(shù)據(jù)庫邏輯設(shè)計就是將E—R圖轉(zhuǎn)換為關(guān)系模型的過程,即將所有實體和關(guān)系轉(zhuǎn)換成一系列的關(guān)系模式。轉(zhuǎn)換過程中常見規(guī)則有:
(1)一個實體型轉(zhuǎn)換為一個關(guān)系模式;(2)一個一對一的聯(lián)系可轉(zhuǎn)換成一個獨立的關(guān)系模式,也可與任意一端對應(yīng)的關(guān)系模式合并;(3)一個一對多的聯(lián)系可以轉(zhuǎn)換成一個獨立的關(guān)系模式,也可與多的那一端對應(yīng)的關(guān)系模式合并;(4)一個多對多的關(guān)系轉(zhuǎn)換成一個關(guān)系模式。
1.2 數(shù)據(jù)庫物理實現(xiàn)
經(jīng)過數(shù)據(jù)庫系統(tǒng)分析和邏輯設(shè)計后,數(shù)據(jù)庫的結(jié)構(gòu)已經(jīng)非常清晰,剩下的就是用一種數(shù)據(jù)庫軟件實現(xiàn)這樣的結(jié)構(gòu)。本系統(tǒng)中數(shù)據(jù)庫采用Microsoft SQL Server 2000作為數(shù)據(jù)庫。首先我們在Microsoft SQL Server 2000的“企業(yè)管理器”創(chuàng)建一個數(shù)據(jù)庫。
Student,Teacher,Course,SC,CourseTime,Building,Room和Admin,每個表與邏輯設(shè)計中一種的關(guān)系模式相對應(yīng)。
2 Web.config頁面設(shè)計
Web.Config文件是用來保存網(wǎng)站的很多全局設(shè)置,代碼是通過using Configuration引用,在Web.Config文件中添加數(shù)據(jù)庫連接字符串。在ADO.NET中用一個字符串來表示一個數(shù)據(jù)庫,一般都把這個字符串放到Web.Config文件中,在整個項目中均可使用。
2.1 數(shù)據(jù)庫連接操作類—Db類
在ASP.NET中通過ADO.NET技術(shù)對數(shù)據(jù)庫進(jìn)行操作。ADO.NET中有許多很方便的類可用來操作數(shù)據(jù)庫,例如SqlConnection類、SqlDataAdapter類、SqlCommand類、DataSet類等。由于在選課系統(tǒng)中,操作數(shù)據(jù)庫的地方非常多,為了避免很多重復(fù)代碼的編寫,所以對數(shù)據(jù)庫操作做了簡單的封裝—Db類。在Db類中有三個靜態(tài)函數(shù)ExecuteSelectSql、ExecuteSql和ExecuteInsertSql,其中ExecuteSelectSql函數(shù)用來執(zhí)行查詢操作,ExecuteSql用來執(zhí)行修改、插入和刪除三類操作,ExecuteInsertSql執(zhí)行需要返回剛插入記錄的identity的insert語句。
通過ADO.NET執(zhí)行SQL語句從而對數(shù)據(jù)庫進(jìn)行操作,一般順序為:先通過SqlConnection的Open函數(shù)連接到數(shù)據(jù)庫,然后再通過Sqlcommand執(zhí)行指定的SQL語句,執(zhí)行結(jié)束后再調(diào)用SqlConnection的Close函數(shù)關(guān)閉數(shù)據(jù)庫連接。
2.2 工具類MyUtility類
在網(wǎng)站的編寫過程中經(jīng)常會有很多公共函數(shù)調(diào)用,把它們都寫在一個工具類里:MyUtility類,每個函數(shù)作為工具類的一個靜態(tài)成員函數(shù)。其中包括MD5靜態(tài)成員函數(shù)以及Alert靜態(tài)成員函數(shù)。
MD5靜態(tài)成員函數(shù):MD5算法。MD5算法是一個不可逆的加密算法,通常用于重要信息的加密,如登錄密碼,在ASP.NET中,提供有MD5的算法實現(xiàn)函數(shù)。
2.3 錯誤信息類和錯誤顯示頁面
在用戶使用系統(tǒng)過程中,可能由于用戶操作失敗或則網(wǎng)絡(luò)原因等,系統(tǒng)運行會出現(xiàn)一些錯誤,為了便于統(tǒng)一,本系統(tǒng)定義專用的錯誤信息類和錯誤顯示頁面。在錯誤信息類ErrorInfo類中,定義了所有的本系統(tǒng)中所出現(xiàn)的錯誤情況和函數(shù)Message。函數(shù)Message根據(jù)錯誤情況得到相應(yīng)顯示字符串。錯誤顯示頁面根據(jù)URL中錯誤代碼參數(shù)顯示不同的錯誤信息。
2.4 登錄頁面
登錄頁面是所有用戶公用的功能。不同的用戶登錄到系統(tǒng)中將轉(zhuǎn)向不同的頁面。解決方法運用了ASP.NET的內(nèi)置對象Session記錄用戶登錄信息,同樣也可以在網(wǎng)站里隨時判斷用戶是否已經(jīng)登錄。
3 系統(tǒng)說明
系統(tǒng)管理員主要有三個功能需要實現(xiàn):設(shè)置設(shè)備狀況、錄入使用單位信息、錄入設(shè)備存放信息。
參考文獻(xiàn)
[1] 李世杰.Active Server Pages(ASP)3.0網(wǎng)頁設(shè)計手冊.北京:清華大學(xué)出版社,1999.
[2] 前沿電腦圖像工作室.巧學(xué)巧用Dreamweaver、Fireworks、Flash制作網(wǎng)頁.北京:人民郵電出版社.
[3] 羅娟.WEB與數(shù)據(jù)庫技術(shù).計算機工程,1998,24(8).