前言:想要寫出一篇引人入勝的文章?我們特意為您整理了淺析數(shù)字圖書館網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)范文,希望能給你帶來靈感和參考,敬請閱讀。
1系統(tǒng)需求分析
1.1后臺功能需求
1)系統(tǒng)設(shè)置模塊。對系統(tǒng)的的基本設(shè)置進(jìn)行設(shè)置。例如網(wǎng)站版權(quán)信息、網(wǎng)站備案號、網(wǎng)站的域名、網(wǎng)站管理員信息等等。2)欄目管理模塊。對網(wǎng)站的欄目進(jìn)行設(shè)置管理。主要包括添加欄目、刪除欄目、查看欄目基本信息、修改欄目信息(例如欄目分組、欄目的類型、欄目模版、是否在菜單顯示、欄目的狀態(tài)等等)、添加欄目分組、刪除欄目分組等等。3)網(wǎng)站公告模塊。超級管理員可以對網(wǎng)站的固定公告、彈窗公告等進(jìn)行管理。主要包括添加刪除彈出公告,修改公告內(nèi)容等功能。4)投票模塊。用戶可以添加網(wǎng)站調(diào)查,啟動網(wǎng)站投票。包括添加調(diào)查主題、添加刪除調(diào)查選項(xiàng)、設(shè)置選項(xiàng)的票數(shù)、設(shè)置投票多選還是單選、設(shè)置投票狀態(tài)等等。5)訪問者安全管理模塊。網(wǎng)站管理員可以添加、修改、刪除訪問IP地址段,用于屏蔽、授權(quán)訪問的IP地址的功能。6)專題管理模塊。網(wǎng)站管理員可以添加、修改、刪除網(wǎng)站的專題,并綁定專題所屬欄目等等功能。7)內(nèi)容管理模塊。有權(quán)限的管理員可以管理網(wǎng)站的內(nèi)容,例如添加文章、刪除文章、修改文章、審核文章、修改文章作者來源等信息。
1.2前臺功能需求
前臺主要向最終用戶顯示信息,將信息顯示到最終用戶的瀏覽器。前臺包括8個主要的功能需求模塊:1)模版管理模塊。建站人員可以在不修改系統(tǒng)源代碼的情況下修改網(wǎng)站的模版、風(fēng)格以及前臺界面。2)內(nèi)容展示模塊。系統(tǒng)根據(jù)建站人員設(shè)置的模版以及欄目設(shè)置等向最終用戶展示文章新聞等內(nèi)容。3)訪問控制模塊。對系統(tǒng)的欄目文章等頁面進(jìn)行訪問控制,不在允許列表中的IP不能訪問。4)訪問記錄模塊。記錄每一個IP訪問某一篇文章的次數(shù),按照一定次序進(jìn)行排序。5)投稿模塊。超級管理員創(chuàng)建的投稿用戶擁有權(quán)限向可以投稿的欄目投稿,投稿用戶可以選擇投稿的欄目,引用欄目,投稿文章標(biāo)題、內(nèi)容等信息。6)友情鏈接模塊。管理員可以添加有錢鏈接,使用標(biāo)簽可以在首頁以及其他頁面顯示文字或者圖片形式的友情鏈接。7)日志模塊。記錄系統(tǒng)的操作日志,以及訪問異常等日志信息。8)搜索模塊。用戶可以使用搜索功能搜索到本系統(tǒng)中的信息。
2系統(tǒng)設(shè)計(jì)
2.1系統(tǒng)總體設(shè)計(jì)
1)總體架構(gòu)本系統(tǒng)作為一種通用型的軟件系統(tǒng),其架構(gòu)必須適應(yīng)用戶需求的不斷變化,而且應(yīng)該層次清晰,各模塊應(yīng)該獨(dú)立不互相依賴,方便二次開發(fā)。數(shù)據(jù)訪問層、邏輯層、界面層完全獨(dú)立。2)設(shè)計(jì)思想本系統(tǒng)采用了多層結(jié)構(gòu)的設(shè)計(jì)思想,即網(wǎng)站架構(gòu)常用的三層架構(gòu)模式,使界面層,邏輯層,數(shù)據(jù)訪問層全部獨(dú)立,當(dāng)某一層代碼需要改變時,不會影響到其他層。如新建一個站點(diǎn)時,只需要添加欄目以及更改界面,設(shè)置網(wǎng)站基本信息,就可以快速搭建一個WEB站點(diǎn),這樣使系統(tǒng)具有很好的靈活性和擴(kuò)展性。
2.2系統(tǒng)的主要類設(shè)計(jì)
系統(tǒng)充分的利用了面向?qū)ο笳Z言多態(tài)的特性,對系統(tǒng)中的主要功能函數(shù)都采用接口的方式進(jìn)行了封裝,數(shù)據(jù)庫訪問層使用了單獨(dú)的動態(tài)鏈接庫進(jìn)行封裝,使系統(tǒng)二次開發(fā)或者更新時,減少人力和物力資源的浪費(fèi)。
3系統(tǒng)實(shí)現(xiàn)
3.1系統(tǒng)核心模塊實(shí)現(xiàn)
針對網(wǎng)站系統(tǒng)最常用類,分別設(shè)計(jì)并實(shí)現(xiàn)了相應(yīng)的核心接口函數(shù)。主要包括數(shù)據(jù)庫操作函數(shù)、讀取配置文件函數(shù)、文件操作函數(shù)、加解密函數(shù)、網(wǎng)站即時信息操作函數(shù)等等。
3.2緩存類的實(shí)現(xiàn)
系統(tǒng)廣泛使用了緩存的方式保存了網(wǎng)站訪問比較頻繁的數(shù)據(jù),減小了數(shù)據(jù)庫服務(wù)器的壓力,使頁面加載速度更快,分別實(shí)現(xiàn)了基本緩存類(BasicCache.cs)、欄目緩存類(CategoryCache.cs)、IP緩存類(IpFilterCache.cs),角色緩存類(RoleCache.cs)。
3.3動態(tài)模版實(shí)現(xiàn)
內(nèi)容管理系統(tǒng)中最核心以及最復(fù)雜的就是動態(tài)模版的實(shí)現(xiàn),本系統(tǒng)采用asp.net的一個模版庫NVelocity實(shí)現(xiàn)了動態(tài)模版。NVelocity是開源包Velocity重寫的.NET版本,代碼簡單易懂,標(biāo)簽可讀性很高。
4結(jié)束語
本系統(tǒng)根據(jù)內(nèi)容管理系統(tǒng)通用快捷特點(diǎn),把實(shí)現(xiàn)靈活和可擴(kuò)展的軟件系統(tǒng)為目標(biāo),設(shè)計(jì)并實(shí)現(xiàn)了本系統(tǒng)。使用Asp.net2.0和NVelocity實(shí)現(xiàn)了簡單靈活的一個快速建站系統(tǒng),系統(tǒng)采用多層分離的方式,使方便開發(fā)人員二次開發(fā),以及方便更新。經(jīng)實(shí)踐,該系統(tǒng)相對市面上的其他內(nèi)容管理系統(tǒng),具有更簡潔,更容易擴(kuò)展等優(yōu)點(diǎn),目前已經(jīng)在網(wǎng)站領(lǐng)域得到了很好的應(yīng)用。
作者:董屹 單位:西華師范大學(xué)圖書館