亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于MVC框架的WEB系統(tǒng)項目的設(shè)計研究

        2021-11-05 07:47:56東莞理工學(xué)校張屹峰
        電子世界 2021年17期
        關(guān)鍵詞:功能模塊數(shù)據(jù)庫系統(tǒng)

        東莞理工學(xué)校 張屹峰

        1 MVC框架

        對于早期的Web系統(tǒng)項目來說,最直接快捷的開發(fā)模式就是先設(shè)計好基于HTML的前端頁面,然后在此基礎(chǔ)上根據(jù)業(yè)務(wù)邏輯嵌入后端處理代碼。也就是說頁面展示與業(yè)務(wù)邏輯是密不可分的。這樣做對于簡單需求的中、小型Web系統(tǒng)項目來說,在某種程度上當(dāng)然能夠降低開發(fā)的難度和成本,但隨著項目需求復(fù)雜程度的提高,這種開發(fā)模式顯然會造成開發(fā)效率的低下,維護(hù)成本的提高。因為前后端開發(fā)人員必須要相互兼顧彼此的業(yè)務(wù)邏輯,而前后端代碼的嵌套也直接造成了系統(tǒng)的高耦合,大量的冗余代碼片段造成系統(tǒng)的臃腫和難以維護(hù)。而MVC框架就很好的解決了這個問題。MVC的概念從上世紀(jì)七十年代就已經(jīng)被提出,經(jīng)過幾次演化后,在由SUN公司開發(fā)出JSP Model2中,對Web MVC進(jìn)行了最早的實踐。

        MVC即Mode(數(shù)據(jù)模型)-View(視圖)-Controller(控制器)。其中Controller是資源的調(diào)控中心,用于接受來自用戶的請求,調(diào)用View和Model的相關(guān)方法處理業(yè)務(wù)邏輯以便完成用戶的需求。Model專門用于數(shù)據(jù)的處理,直接與數(shù)據(jù)庫相關(guān)聯(lián),它定義了對數(shù)據(jù)庫的相關(guān)操作,是Controller的數(shù)據(jù)來源。View是展示數(shù)據(jù)的相關(guān)頁面,它不關(guān)心數(shù)據(jù)的處理邏輯,只負(fù)責(zé)數(shù)據(jù)的呈現(xiàn)方式,通常是在HTML元素或模板標(biāo)記語言中嵌入獲取的數(shù)據(jù)標(biāo)記。多個View可以共享一個Model的數(shù)據(jù),因而降低了代碼的冗余度。基本流程如圖1所示。

        圖1 MVC基本流程

        2 項目系統(tǒng)架構(gòu)設(shè)計

        本文的Web項目系統(tǒng)基于PHP語言,采用MVC框架設(shè)計。這里僅以新聞管理、新聞?wù)故竟δ苣K為例說明MVC框架在Web項目系統(tǒng)中的應(yīng)用。為方便說明,暫且不考慮用戶登錄注冊等功能模塊。系統(tǒng)文件結(jié)構(gòu)如圖2所示。

        圖2 新聞管理功能模塊MVC框架文件結(jié)構(gòu)

        2.1 Model層設(shè)計

        Model層直接和數(shù)據(jù)庫打交道,在Model層中針對數(shù)據(jù)庫中的表設(shè)計多個實體類,這些實體類與數(shù)據(jù)庫表是一對一的映射關(guān)系。例如,數(shù)據(jù)庫中的NEWS_TB表對應(yīng)了Model層中的Newstb實體類。這樣做的好處是將數(shù)據(jù)庫表抽象出來,便于后期操作和管理,方便維護(hù)。而對于抽象出來的每一個實體類,都需要一個實體服務(wù)類與其對應(yīng),實體類與實體服務(wù)類也是一對一的映射關(guān)系。例如,Newstb實體類所對應(yīng)的實體服務(wù)類為News_service類。實體服務(wù)類基于實體類創(chuàng)建實體對象$newstb_row,并為實體類對象提供了一系列操作數(shù)據(jù)庫的方法。Model層結(jié)構(gòu)流程如圖3所示。

        圖3 Model層結(jié)構(gòu)流程

        其中,實體類主要代碼片段如下:

        實體服務(wù)類主要代碼片段如下:

        2.2 Controller層和View層設(shè)計

        Controller層利用Model層創(chuàng)建的實體服務(wù)類創(chuàng)建一個實體服務(wù)類對象$newsService,在Controller層的功能模塊中利用該服務(wù)類對象$newsService執(zhí)行不同的方法完成相應(yīng)的功能。View層作為展示內(nèi)容的界面被包含到Controller層的相應(yīng)文件中,為相關(guān)操作提供接口或數(shù)據(jù)錄入界面。Controller層和View層的結(jié)構(gòu)流程如圖4所示。

        圖4 Controller層和View層結(jié)構(gòu)流程

        以Controller層的getallnews.controller.php文件為例,其中的Getallnewscontroller類主要代碼片段如下:

        2.3 系統(tǒng)入口設(shè)計

        在圖4中,可以看到系統(tǒng)設(shè)計了單一入口,也就是使用index.php文件處理所有的HTTP請求,無論是新聞列表頁還是新聞詳情頁。在入口文件中,我們還可以對url參數(shù)和POST數(shù)據(jù)進(jìn)行必要的安全性檢查和特殊字符過濾、記錄日志、訪問統(tǒng)計等各種集中性任務(wù)處理,從而提高的系統(tǒng)的安全性,降低熊維護(hù)的成本和難度。主要代碼片段如下:

        結(jié)束語:本文只是以新聞管理系統(tǒng)中的部分功能模塊為例,在基于PHP語言的基礎(chǔ)之上簡要分析了MVC框架的原理及設(shè)計流程。MVC框架以其低耦合性、高重用性以及較低的生命周期成本使得其應(yīng)用越來越廣泛。利用MVC框架可以快速部署項目,極大的方便了軟件項目的工程化管理。但由于MVC框架增加了系統(tǒng)的結(jié)構(gòu)和實現(xiàn)的復(fù)雜性,View層和Controller層關(guān)系緊密也從一定程度上造成了MVC框架使用的難度。因此,對于大型復(fù)雜需求的項目可以優(yōu)先考慮使用MVC框架,對于中、小型項目建議還是不要使用。

        猜你喜歡
        功能模塊數(shù)據(jù)庫系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機(jī)系統(tǒng)
        ZC系列無人機(jī)遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        基于ASP.NET標(biāo)準(zhǔn)的采購管理系統(tǒng)研究
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        輸電線路附著物測算系統(tǒng)測算功能模塊的研究
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        M市石油裝備公服平臺網(wǎng)站主要功能模塊設(shè)計與實現(xiàn)
        石油知識(2016年2期)2016-02-28 16:20:16
        国产亚洲专区一区二区| 久草视频华人在线观看| 国模少妇一区二区三区| 亚洲欧洲中文日韩久久av乱码| 国产一品道av在线一二三区| 亚洲AV无码一区二区三区ba| 在线亚洲AV不卡一区二区 | 丰满多毛的大隂户视频| 99久久夜色精品国产网站| 国产精品一区二区韩国AV| 人妻少妇无乱码中文字幕| 亚洲精品国产av成拍| 亚洲av日韩一卡二卡| 伦伦影院午夜理论片| 亚洲婷婷五月综合狠狠爱| 亚洲男人的天堂在线aⅴ视频| 日本www一道久久久免费榴莲| 日韩五十路| 亚洲啊啊啊一区二区三区| 精品国产一区二区三区性色 | 亚洲国产av精品一区二| 一区二区三区免费观看日本 | av男人天堂网在线观看| 亚洲av无一区二区三区| 国产乱国产乱老熟300部视频 | 日韩国产一区| 成人免费无码视频在线网站| 亚洲男人在线天堂av| 美女视频在线观看网址大全| 97久久国产亚洲精品超碰热| 超碰97资源站| 久久精品国产亚洲av高清色欲| 亚洲色偷拍一区二区三区 | 少妇又紧又色又爽又刺| 男人吃奶摸下挵进去啪啪软件 | 精品午夜福利1000在线观看| 加勒比熟女精品一区二区av| 熟女一区二区国产精品| 狠狠躁日日躁夜夜躁2020| 人禽伦免费交视频播放| 色婷婷色99国产综合精品|