国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MVC的高校研究生會管理系統(tǒng)的開發(fā)與實現(xiàn)

2015-10-09 20:27邢飛燕施佺胡祖輝李奎
科技資訊 2015年18期

邢飛燕++施佺++胡祖輝++李奎

摘 要:為了提高高校研究生會的工作效率,實現(xiàn)校園信息化管理,提出了基于MVC架構(gòu)模式的研究生管理系統(tǒng)的開發(fā),并完成了系統(tǒng)的設(shè)計與實現(xiàn)。該系統(tǒng)采用Visual Studio 2010為開發(fā)工具,Microsoft SQL Server 2008為數(shù)據(jù)庫服務(wù)器。實踐證明,該系統(tǒng)界面清晰、操作簡便,具有良好的安全性、可擴展性和易維護(hù)性。

關(guān)鍵詞:MVC 研究生會 校園信息化

中圖分類號:TP273 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2015)06(c)-0034-02

信息技術(shù)的飛速發(fā)展加快了高校信息化的進(jìn)程。校園信息化是指在傳統(tǒng)校園的基礎(chǔ)上運用計算機技術(shù)和網(wǎng)絡(luò)硬件設(shè)施,構(gòu)建一個數(shù)字空間以拓展校園的時間和空間跨度,實現(xiàn)校園的數(shù)字信息化。

該校研究生會目前有主席團(tuán)、辦公室、人力資源部、外聯(lián)部和宣傳部等8個部門,各個學(xué)院也有自己獨立的研究生會,共同受轄于校研究生會。每年研究生會招新、部門例會等活動,這些信息往往都是出于人工管理階段,很多材料信息都不能有效及時的存檔,導(dǎo)致研究生會換屆階段,很多工作無法順利展開,大大降低了研究生會的工作效率。因此,發(fā)展校研究生會信息化管理勢在必行。作為校園信息化進(jìn)程中一個關(guān)鍵的組成部分,高校研究生會管理系統(tǒng)的主要作用包括發(fā)布研究生會最新動態(tài)和通知公告等,是研究生和學(xué)校之間的橋梁,也是提高高校競爭力的必然條件。

1 MVC設(shè)計模式

目前最通用的軟件體系架構(gòu)包括層次模式、多層分布模式和MVC模式等[1]。該系統(tǒng)采用的是MVC架構(gòu)模式。該模式最早是由施樂(Xerox)Palo Alto研究中心(PARC,Palo Alto Research Center)于20世紀(jì)70年代提出的[2],它是Model(模型)—View(視圖)—Controller(控制器)的簡稱,是把一個應(yīng)用的輸入、處理和輸出流程按照Model、View、Controller的方式進(jìn)行分離,形成模型層、視圖層和控制層三個層次。通過區(qū)分各個層,允許組成每個層的各個組件間松散地耦合,因此采用這種模式可以減少代碼的重復(fù)性,使得程序開發(fā)更加靈活。

模型Model是業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。它獨立于其他功能模塊,對其他功能模塊來說相當(dāng)于一個黑箱操作。模型的作用主要包括:向控制器Controller提供對程序功能的訪問;抽象應(yīng)用程序的功能,封裝程序數(shù)據(jù)的結(jié)構(gòu)及其操作;接受視圖View的數(shù)據(jù)查詢請求;在數(shù)據(jù)變化時通知對此數(shù)據(jù)感興趣的視圖。

視圖View代表用戶和系統(tǒng)的交互界面,主要是用來展現(xiàn)用戶所需的數(shù)據(jù)。一般可以采用HTML界面、Applet和XML等技術(shù)。視圖的作用主要包括:將Model中的數(shù)據(jù)展現(xiàn)給用戶并獲得用戶輸入;將用戶輸入傳遞給Controller;當(dāng)Model數(shù)據(jù)更新后,同時更新顯示數(shù)據(jù)。

控制器Controller是Model與View之間的聯(lián)系紐帶,相當(dāng)于一個中轉(zhuǎn)站。Controller的主要作用包括:將用戶輸入轉(zhuǎn)換為應(yīng)用程序的動作,并傳遞給Model執(zhí)行;根據(jù)用戶輸入和Model執(zhí)行動作的輸出,選擇適當(dāng)?shù)腣iew展現(xiàn)給用戶。采用MVC設(shè)計模式,能夠讓HTML設(shè)計師與開發(fā)者完全獨立地做好自己的工作,減少了相互干擾的可能性。三個層次之間分工協(xié)作,哪一層需要發(fā)生變化,只需修改相應(yīng)層的代碼,不會影響其余的代碼,使得代碼易于重用,維護(hù)更加簡單。雖然采用MVC設(shè)計模式增加了軟件的復(fù)雜程度,但可以大幅度減少后期的調(diào)試,降低修改難度。

2 系統(tǒng)的設(shè)計與實現(xiàn)

2.1 系統(tǒng)設(shè)計

高校研究生會管理系統(tǒng)采用的是ASP.NET MVC3.0框架,該框架是由微軟公司出品的Web開發(fā)平臺[3]。數(shù)據(jù)庫為SQL Server 2008,開發(fā)語言為Visual C#語言,開發(fā)的IDE為Visual Studio 2010。

按照ASP.NET MVC的體系架構(gòu)和具體需求,該系統(tǒng)可以分為瀏覽器層、Web服務(wù)器層、業(yè)務(wù)邏輯層和數(shù)據(jù)層。對于系統(tǒng)管理員,瀏覽器層為其提供登陸頁面,并根據(jù)管理員輸入信息及使用權(quán)限進(jìn)行驗證,之后再轉(zhuǎn)入相應(yīng)的瀏覽界面。對于普通用戶,瀏覽器層可直接提供前臺界面的信息,該層使用Razor視圖來實現(xiàn)。Razor視圖模板提供了一個最快捷,最簡便的編碼方式[4]。Web服務(wù)器層主要包括控制器和部分視圖模型,它接受來自客戶端的請求,為不同身份的用戶分發(fā)不同的瀏覽信息。業(yè)務(wù)邏輯層組合了與數(shù)據(jù)庫的數(shù)據(jù)鏈路層(DAL)和面向具體業(yè)務(wù)模塊的業(yè)務(wù)邏輯層(BLL),它是將MVC中的模塊Model獨立出來實現(xiàn)的。在接受了Web服務(wù)器請求之后,實現(xiàn)系統(tǒng)的業(yè)務(wù)邏輯處理功能。數(shù)據(jù)層負(fù)責(zé)存儲和管理數(shù)據(jù)。

該系統(tǒng)主要針對三類用戶:校級管理員、院級管理員和普通用戶,這三種用戶分別具有不同的權(quán)限。校級管理員和院級管理員通過登錄來獲取不同的權(quán)限,其中院級管理員負(fù)責(zé)上傳公告新聞等信息,校級管理員除此之外還具有發(fā)布這些信息的權(quán)利。普通用戶無需登錄就可瀏覽這些信息 。下面以新聞資訊模塊為例,詳細(xì)說明系統(tǒng)使用MVC架構(gòu)模式的實現(xiàn)設(shè)計方法。

(1)控制層(Controller)的設(shè)計。

新聞資訊模塊的控制層是由NewsController類來實現(xiàn)的。NewsController類具有列表(Index())、添加(Create())、刪除(Delete())、修改(Edit())、明細(xì)(Details())和瀏覽(Browse())等方法。其中Index()是在后臺返回新聞列表。Browse()是在前臺顯示新聞列表。Details()是給用戶返回新聞主要內(nèi)容,Create()、刪除(Delete()和Edit()主要實現(xiàn)新聞的創(chuàng)建、刪除和修改功能。

(2)模型層(Model)的設(shè)計。

模型類代表了應(yīng)用程序的數(shù)據(jù),這些數(shù)據(jù)通常具有一個數(shù)據(jù)驗證邏輯,使得這些數(shù)據(jù)必須符合業(yè)務(wù)邏輯。新聞資訊模塊的模型層的關(guān)鍵代碼如下:

public class NewsM

{

public int NewsMID { get; set; }

public int GenreNewsID { get; set; }

[Required(ErrorMessage = "標(biāo)題不能為空")]

[StringLength(30,ErrorMessage = "標(biāo)題長度不能超過30個字符")]

public string Title { get; set; } //新聞標(biāo)題

……//類似代碼,不一一羅列

public virtual GenreNews GenreNews { get; set; }

}

其中NewsMID是主鍵,GenreNewsID是外鍵,使新聞資訊表關(guān)聯(lián)新聞類別表。[Required]驗證指明該屬性的數(shù)據(jù)必須不為空。[StringLength]指定了該屬性運行輸入的最大字符串長度。每一個驗證特性都支持“ErrorMessage”屬性,使開發(fā)人員可以指明驗證失敗時需顯示的錯誤信息。

(3)視圖層(View)的實現(xiàn)設(shè)計。

視圖層只負(fù)責(zé)數(shù)據(jù)的呈現(xiàn)。在Razor視圖中,所有以@開頭或者@{/*代碼體*/}部分的代碼都會被ASP.NET引擎處理。下面以添加新聞頁面為例,關(guān)鍵代碼如下:

@model GraduateUnion.Models.News.NewsM

@{

Layout = null;

}

創(chuàng)建

@using (Html.BeginForm()) {

@Html.ValidationSummary(true)

新聞

新聞類別

@Html.DropDownList("GenreNewsID", String.Empty)

@Html.ValidationMessageFor(model => model.GenreNewsID)

標(biāo)題

@Html.EditorFor(model => model.Title)

@Html.ValidationMessageFor(model => model.Title)

……//類似代碼,不一一羅列

}

@Html.ActionLink("返回列表", "Index", new { page=1})

以上代碼使用了HTML幫助器的方法來簡化HTML標(biāo)簽的書寫方法。Html.EditorFor幫助器用于顯示一個提供給用戶輸入信息的HTML的元素。Html.ValidationMessageFor 幫助器用于顯示一個針對屬性的校驗信息。在該視圖模板的頂部設(shè)置了@model GraduateUnion.Models.News.NewsM的聲明,該聲明表示將視圖模板中的“模型”強類型轉(zhuǎn)化成一個NewsM類。

2.2 系統(tǒng)實現(xiàn)

該文描述的高校研究生會管理系統(tǒng)采用asp.net MVC3.0框架設(shè)計,在MVC架構(gòu)中,三個層次相互協(xié)作,業(yè)務(wù)邏輯由模型層實現(xiàn),控制層調(diào)配業(yè)務(wù)數(shù)據(jù)到需要展示的視圖層進(jìn)行顯示。在網(wǎng)頁地址欄中輸入研究生會的網(wǎng)址后進(jìn)入研究生會管理系統(tǒng)首頁,頁面顯示新聞、研會動態(tài)和通知公告等信息。頁面下方有“管理員登陸”按鍵,點擊進(jìn)入后臺登陸頁面,輸入用戶名和密碼后,可進(jìn)入相應(yīng)系統(tǒng)工作區(qū),操作相應(yīng)各個功能模塊。限定20min沒有對系統(tǒng)進(jìn)行任何操作,則自動返回到初始登陸界面,從而保護(hù)用戶操作信息。系統(tǒng)運行結(jié)果如圖1所示。

3 結(jié)語

該文基于MVC模式,設(shè)計和開發(fā)了適用于高校使用的研究生會管理系統(tǒng)。系統(tǒng)采用了ASP.NET MVC3.0框架,從Model、View、Controller三個層次設(shè)計系統(tǒng)開發(fā)流程,實現(xiàn)了視圖顯示和邏輯功能真正的分離,增強了系統(tǒng)的可移植性、可擴展性和可變動性。該系統(tǒng)滿足了用戶的需求,實現(xiàn)了高校校園信息化管理,大大提高了研究生會的工作效率。

參考文獻(xiàn)

[1] 龔薇華,王晨光,俞歡軍.基于MVC模式和.NET的公司內(nèi)部管理信息系統(tǒng)設(shè)計[J].計算機工程與設(shè)計,2007,28(9):2142-2144.

[2] 孫奧.MVC模式在.NET框架中的應(yīng)用與實現(xiàn)[J].科技廣場,2006(1):69-71.

[3] 王程.基于ASP.NET MVC3的清潔生產(chǎn)管理系統(tǒng)平臺設(shè)計與實現(xiàn)[J].管理技術(shù),2013(12):212-213.

[4] 謝艷芬.基于ASP_NETMVC的后勤管理系統(tǒng)的設(shè)計與實現(xiàn)[D].南昌:南昌航空大學(xué),2014.

和顺县| 宣化县| 扎鲁特旗| 南通市| 滦平县| 大关县| 张家口市| 岐山县| 新干县| 延长县| 海伦市| 开平市| 当雄县| 香河县| 始兴县| 舟曲县| 榆社县| 讷河市| 东港市| 天津市| 龙里县| 涟水县| 娱乐| 青海省| 卫辉市| 邯郸市| 九寨沟县| 德格县| 河北省| 景德镇市| 邮箱| 修武县| 新营市| 宜都市| 习水县| 灵武市| 罗源县| 德清县| 车险| 东莞市| 南通市|