摘 要:NET是當前web應用開發中流行的技術,討論了一個基于ASP.NET、B/S開發模式和SQL Server 2000相結合的新聞發布管理系統,同時對系統的功能模塊、體系結構以及實現的關鍵技術進行了詳細的介紹。
關鍵詞:ASP.NET;SQL Server 2000;三層架構;新聞發布系統
中圖分類號:P311文獻標識碼:A文章編號:16723198(2010)01027401
1 引言
新聞發布系統作為網站的一個重要組成部分,任何網站都必然對它進行開發。傳統的網站新聞管理方式有兩種,一是靜態HTML頁面,更新信息時需要重新制作頁面,然后上傳頁面并修改相應鏈接,這種方式因為效率太低己不多用;二是基于ASP和腳本語言,將動態網頁和數據庫結合,通過應用程序來處理新聞頁面,這是目前較為流行的做法。但是由于ASP本身的局限性使得系統有一些不可消除的缺陷,而采取了ASP.NET技術,增強了系統性能。
本文正是基于這種需求,結合當今流行的ASP.NET技術,采用簡單易行的B/S結構,應用SQL Server后臺數據庫功能,來實現新聞發布管理系統。
2 系統分析與設計
2.1 系統的開發模式
為了滿足系統對先進性、安全性、跨平臺性、可擴展性、可移植性、分布式等方面的要求,系統總體架構設計采用先進的基于.NET的B/S的三層體系結構。這種模型使系統結構更加清楚,分工更加明確,有利于后期的維護和升級。三層體系結構由瀏覽器、web服務器和數據庫組成,并結合HTML語言、C#語言、JavaScript腳本語言、ASP.NET、ADO.NET、ODBC等技術,后臺數據庫采用SQL Server 2000,如圖1所示。

如圖1可知,用戶界面層是用戶和整個系統的接口,客戶端只需安裝通用的瀏覽器即可建立與本系統的連接。業務邏輯層負責處理用戶輸入的信息,或將這些信息發送給數據庫層進行保存,或調用數據庫層中的函數再次讀出這些數據。數據訪問層是整個分層體系的最底層,它主要用來實現與數據庫的交互,即完成查詢、插入、刪除和修改數據庫中數據的功能。
2.2 系統的功能結構
對于各類門戶網站的新聞發布系統來說,所發布的不僅僅只有新聞,還包括通知、公告和專題等各種動態的信息,是一種廣義上的新聞發布系統,也稱其為信息發布系統。其流程主要是:系統管理員為各部門的管理員分配權限,信息管理員根據自己的用戶名和口令登錄到管理界面,進行新聞的錄入和發布。通過對系統流程及需求的分析,確定了系統主要包括新聞前臺顯示和后臺管理兩大類。該系統的功能模塊結構圖如圖2所示。
3 系統實現的關鍵技術分析
3.1 系統安全的設計
考慮到本系統采用的是B/S結構體系,所有機器都在Internet的開放環境下,因此,系統必須充分考慮到網絡上存在的一切不安全因素。為此,本系統采用防火墻機制保護系統的數據和資源。在SQL Server數據庫中對用戶權限驗證采用雙層驗證機制:登錄身份驗證和對數據庫的所有用戶帳號、密碼及用戶權限的驗證。此外在數據庫中存儲的數據,存儲前使用加密算法進行加密,在SQL Server數據庫中只能導出沒有任何意義的數據;合法客戶請求數據時,從數據庫讀出數據后,首先使用對應的解密算法,再把數據發送給用戶。加密算法封裝在dll文件中在源代碼中調用.并使用IP驗證來保護通過網絡傳遞的數據安全。在WEB服務器中,本系統采用了基于系統管理的頁面權限設計,根據安全策略劃分出不同的角色.對每個角色分配不同的權限,并為用戶指派不同的角色。用戶通過角色間接地對信息資源進行相應的許可操作,采用表單提交式身份驗證模式;加密身份驗證使用單獨的Cookie名稱和路徑。另外,使用SSL連接保護信息的傳遞來對用戶輸入信息進行輸入驗證。

3.2 基于ADO.NET技術的Web訪問數據庫
在ASP.NET中訪問數據庫有代碼內聯、代碼后置、使用組件、使用存儲過程等四種方法。在新聞發布管理系統中采用了代碼后置、使用組件、使用存儲過程三種方法。
(1)代碼后置:在代碼后置模型中,對數據庫進行操作的代碼與頁面的實際內容相互隔離,被完全轉移到一個單獨的文件中。由美工人員負責設計Web應用程序外觀(布局、顏色、美學等),由程序員負責編寫業務邏輯和對數據庫操作的代碼。
(2)使用組件(DLL):在使用組件的方式中,不僅將對數據庫進行操作的代碼分離出來放在一個單獨的文件中,而且將該文件編譯成組件。這些組件放置在Web服務器上,即三層結構中的業務邏輯層。在ASP.NET頁面中即可非常方便“引用”此組件,.dll文件中的內容已經編譯,可以大大加快程序運行速度,此外還可以保護源程序。
(3)使用存儲過程:在新聞發布管理系統中,應用程序使用存儲過程代替SQL語句進行數據訪問。在提高代碼安全性的同時,也加快了程序執行效率。
3.3 基于web的動態網頁與鏈接技術
本系統新聞資源是通過web數據庫管理和維護的。系統采用ASP.NET設計Web數據庫中間控件。ASP.NET提供了一種新的編程框架,是一種運行于服務器端的腳本引擎,可以創建動態、交互式且高性能的Web應用,它包含了許多新的功能:1)web controls使創建HTML controls變得更為簡單;2)支持多種語言。其缺省語言是Visual Basic,而不是Vbscript,可使用編譯、事件驅動模式;3)更好的代碼控制;4)更好的升級能力。ASP.NET完全和HTML集成,具有強大的網絡數據庫處理功能。對于大量的、可以重復使用的信息資源,通過建立信息資源數據庫,利用ASP.NET與Web服務器建立快速鏈接。根據用戶請求靈活組織內容,形成動態頁面。
4 結語
采用基于.NET的B/S三層體系結構和ASP.NET軟件開發技術設計并實現了一種新聞發布管理系統,運行效率要遠優于基于VBScript開發的ASP程序,系統的安全性也得到較大的提高。該系統與Internet無縫結合,實現了在Internet上完成新聞發布的控制和管理。
參考文獻
[1]李勇平,陳鋒波.ASP.NET(c#)基礎教程[M].北京:清華大學出版社,2006.
[2]崔青,李秀紅,欒竹青.基于ASP.NET考試系統的Web設計與實現[J].電腦學習,2008,(04).
[3]暴志剛,胡艷軍,顧新建.基于Web的系統權限管理實現方法[J].計算機工程,2006,(01).
[4]曹衍龍.ASP/ASP.NET數據庫開發實用工程案例精選[M].北京:人民郵電出版社,2005.