ASP.NET的網站新聞管理系統設計與實現
時間:2022-04-18 01:41:00
導語:ASP.NET的網站新聞管理系統設計與實現一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。
時間:2004-04-15作者:陳志華鄧貴仕(大連理工大學管理學院系統工程研究所)
【摘要】利用和技術開發的網站新聞管理系統,實現了網站新聞的動態管理,使得對信息的管理更加及時、高效,提高了工作效率。同時對系統的開發原理、系統的功能特點和設計方案進行了介紹。
【關鍵詞】新聞管理數據庫
隨著Internet的普及,越來越多的企業建立了自己的WWW網站,企業通過網站可以展示產品,最新動態,與用戶進行交流和溝通,與合作伙伴建立聯系,以及開展電子商務等。其中新聞管理系統是構成企業網站的一個重要組成部分,它擔負著雙層作用,一方面可以用來動態有關新產品或新開發項目,另一方面又可以及時向顧客公告企業經營業績、技術與研發進展、特別推薦或優惠的工程項目、產品和服務,從而吸引顧客,擴大顧客群。
傳統的網站新聞管理方式有兩種,一是靜態HTML頁面,更新信息時需要重新制作頁面然后上傳頁面并修改相應鏈接,這種方式因為效率太低已不多用。二是基于ASP和腳本語言,將動態網頁和數據庫結合,通過應用程序來處理新聞,這是目前較為流行的做法。但是由于ASP本身的局限性使得系統有一些不可克服的缺陷,而采取了技術的系統性能上有了很大的改善,其主要表現在以下幾方面:
1.由于ASP頁面每次打開都必須經過先編譯后解釋的過程,所以頁面在反復打開時速度沒有任何提升,而頁面只需要一次編譯后不需要重新編譯,直到該頁面被修改或Web應用程序重新啟動。這使得在多次訪問時速度有了極大的提升。
2.由于ASP沒有提供任何輸出數據為內容的元件,所以在使用ASP撰寫數據庫頁面時只能借助ADO的RecordSet對象逐筆讀取記錄,而通過提供的DataGrid等數據庫元件可以直接和數據庫聯系。
3.支持應用程序的實時更新。管理員不必關掉網絡服務器或者甚至不用停止應用程序的運行就可以更新應用文件。應用程序文件永遠不會被加鎖,因此甚至在程序運行時文件就可以被覆蓋。當文件更新后,系統會溫和地轉換到新的版本。
4.采取"code-behind"方式編寫代碼使得代碼更易于編寫,結構更清晰,降低了系統的開發與維護的復雜度和費用。
1系統的開發原理
1.1基于技術的系統結構模型
結構是一個三層系統:UI層、業務邏輯層和數據層,如圖1所示。
圖的系統結構模型
UI層負責與用戶交互,接收用戶的輸入并將服務器端傳來的數據呈現給客戶。
業務邏輯層負責接收瀏覽器傳來的請求并將請求傳給數據層,同時將請求處理結果發給瀏覽器。它由Web表單、XMLWeb服務和組件服務組成。其中Web表單是應用程序的核心所在,它是向客戶呈現數據和信息的基礎,也是響應和處理客戶與顯示的Web表單交互生成的信息和數據的基礎。
數據層是通過操縱數據為事務邏輯層提供數據服務,如存儲數據操作結果、返回數據檢索結果等。
訪問數據庫的原理
與數據庫相連,提供了如下3種方式:通過ODBC相連;通過OLEDB相連;直接與SQLServer相連。3種方式由于應用層次的差異,使得效率由低到高,獨立性由高到低。對于相連數據庫的數據處理,也有2種方式,即一種是通過DataSet來隔離異構的數據源,另一種是以流方式從數據源讀取(DataReader方式)。
傳統的應用程序是通過先建立到數據庫的連接,在程序的整個運行過程中維護連接的方式來設計的。采取了斷開連接方式的數據結構。當瀏覽器向Web服務器請求網頁時,服務器處理這個請求,并將所請求的網頁發送給瀏覽器,然后連接就被斷開,直到瀏覽器發出下一個請求。
的另一個創新是引入了數據集(Dataset)。一個數據集是內存中提供數據關系圖的高速緩沖區。數據集對數據源一無所知,它們可以由程序或通過從數據倉庫中調入數據而被生成、填充。不論數據從何處獲取,數據集都是通過使用同樣的程序模板而被操作的,并且它使用相同的潛在的數據緩沖區。
2系統的功能設計
2.1系統的功能結構
該新聞管理系統可以在Windows2000Server操作系統平臺上運行,Web服務器為IIS,數據庫服務器為MicrosoftSQLServer2000,開發工具采用的和DreamWeaver。圖2給出系統的功能結構圖。其工作流程為:用戶登錄通過權限判斷,普通用戶只能瀏覽、閱讀和查詢新聞,注冊用戶除了可以完成普通用戶的操作外,還可以進入新聞管理模塊進行新聞錄入、修改和刪除的操作。注冊用戶除系統管理員外只能對自己錄入的新聞進行刪改操作。
2.2系統的功能特點
(1)操作簡單、界面友好:完全控件式的頁面布局,使得新聞的錄入工作更簡便;許多選項包括新聞類別、來源部門等只需要點擊鼠標就可以完成;另外,跟蹤出現的提示信息也讓用戶隨時清楚自己的操作情況。
(2)即時可見:對新聞的處理(包括錄入、修改、刪除)將立即在主頁的對應欄目顯示出來,達到"即時、即時見效"的功能。
圖2系統功能結構圖
(3)功能完善:包括常見網站的新聞管理的各個方面:新聞錄入、瀏覽、刪除、修改、檢索等各個方面,完整地實現了網站對即時新聞的管理要求。
(4)方便移植:針對不同的企業,只需要稍作修改就可以開發出適合本企業特點的網站新聞管理系統!
3系統的詳細設計
系統的主要功能是通過幾個功能模塊來實現的。具體的設計過程如下:
⑴系統登錄:該模塊負責將用戶分為普通用戶和注冊用戶來實現用戶權限的管理。
⑵新聞瀏覽:該模塊負責分頁列出網站所有新聞的信息,包括標題、類型、來源部門字段及日期,每條新聞的標題被做成一個超鏈接,點擊它們就能跳轉頁面進行新聞閱讀。
⑶新聞閱讀:在其他頁面中點擊標題鏈接即進入新聞閱讀頁面,此時,每條新聞的詳細信息將被取出,包括內容、標題、關鍵字等,并按照相對固定的格式放置在頁面的不同區域,所有新聞使用大致相同的頁面布局,只是各字段對應的內容不同而已,另外,頁面其它位置,可以動態放置其他元件,如網站標志logo、頁面廣告banner等鏈接圖片,這樣可以很容易地實現圖文并茂的閱讀效果。
⑷新聞查詢:該模塊提供了新聞查詢功能,輸入待查找的內容及選定分類信息可以快速地找到符合條件的新聞,并輸出查詢結果。
⑸新聞管理:該模塊負責分頁羅列登錄的注冊用戶曾過且未刪除的新聞信息,用戶可以對該條新聞進行刪除、修改。非新聞者除系統管理員外不具有對該條新聞的處理權限,所以不同用戶進入此頁面將顯示不同的內容。
⑹新聞錄入和修改:注冊用戶錄入一條新聞所需要的內容,包含標題、關鍵字、類型、來源部門、日期等,同時從登錄模塊得到用戶名,這些信息將被寫入數據庫中保存。該模塊還負責編輯狀態下的更新,這時,它將根據取得的Title字段值對頁面控件初始化。公務員之家版權所有
下面以系統登錄頁面的編寫為例給出主要事件和函數,說明該系統的開發過程。
//IsRegUserOk函數:判斷用戶是否已經注冊和密碼是否正確
publicboolIsRegUserOk()
{
stringname=TextBoxName.Text.Trim();
stringpwd=TextBoxPassword.Text.Trim();
//建立/打開數據庫連接
SqlConnectionconn=newSqlConnection();
conn.ConnectionString="server=(local);uid=sa;pwd=;database=jxdb";
conn.Open();
//建立sql字符串
stringsql="select*fromregwherename=''''"+name+"''''";
SqlDataReaderdr;
SqlCommandcmd=newSqlCommand(sql,conn);
dr=cmd.ExecuteReader();
//保留用戶注冊與否信息
boolisRegUserExist=dr.Read();
//關閉DataReader
dr.Close();
//取得用戶名的密碼
stringsqlBoth="select*fromregwherename=''''"+name+"''''";
sqlBoth+="andpwd=''''"+pwd+"''''";
SqlCommandcmdBoth=newSqlCommand(sqlBoth,conn);
SqlDataReaderdrBoth;
drBoth=cmdBoth.ExecuteReader();
//保留用戶名+密碼同時存在信息
boolisBothExist=drBoth.Read();
//關閉DataReader
drBoth.Close();
conn.Close();
//判斷用戶是否注冊
if(!isRegUserExist)
{
Response.Write("<script>alert(''''此用戶尚未注冊!'''')");
returnfalse;
}
//判斷用戶名與密碼是否一致
elseif(!isBothExist)
{
Response.Write("<script>alert(''''用戶名和密碼不一致,不能進入!'''')");
returnfalse;
}
else
returntrue;
}
最后給出系統后端數據存儲方案:
利用MicrosoftSQLServer2000建立數據庫及其存儲過程。這里給出兩個必需的數據表,一是數據表News包含的字段有:編號、姓名、標題、關鍵字、內容、類型、來源部門和日期。字段說明如下:
二是數據表Reg包含的字段有:編號、姓名、密碼、所屬部門、電子郵箱和電話。字段說明如下:
參考文獻
[1]天極網新技術研究室.《完全入門》.重慶出版社,2001
[2]ScottWorley著.《技術內幕》.王文龍劉湘寧譯.人民郵電出版社,2002
[3]SanjeevRohilla,SenthilNathan,SurbhiMalhotra著.《專業項目實例開發》.陳君王寶良譯.中國水利水電出版社,2003
[4]丁晟春王曰芬.網站新聞管理系統的設計與應用.現代圖書情報技術.2002,5
[5]/
- 上一篇:ASP制作學生檔案管理系統
- 下一篇:利用PowerBuilder開發WEB應用