<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 基于模型-視圖-控制器的Web應(yīng)用程序框架設(shè)計

          基于模型-視圖-控制器的Web應(yīng)用程序框架設(shè)計

          作者: 時間:2009-12-10 來源:網(wǎng)絡(luò) 收藏

          的結(jié)構(gòu)如圖2所示。Views和ViewManager是系統(tǒng)的部分,其中,ViewManager負(fù)責(zé)頁面的生成與顯示。服務(wù)和業(yè)務(wù)邏輯組件提供的業(yè)務(wù)邏輯,屬于系統(tǒng)的部分。剩下的部分屬于系統(tǒng)的部分,各個部分的主要功能如下:Manager給提供一個人口,根據(jù)不同的Navigator來決定新建或加載一個任務(wù):Navigator負(fù)責(zé)管理頁面之間的跳轉(zhuǎn),根據(jù)配置文件選擇合適的頁面,調(diào)用ViewManager激活頁面;ControllerBase和Controllers根據(jù)頁面請求調(diào)用不同的業(yè)務(wù)邏輯,返回結(jié)果;State保存的狀態(tài)以及當(dāng)前顯示的頁面。

          本文引用地址:http://www.ex-cimer.com/article/163423.htm

          此應(yīng)用的具體工作流程如下:在Manager中啟動任務(wù)以后,實例化導(dǎo)航器傳遞適當(dāng)?shù)男畔⒔o導(dǎo)航器(Navigator)。導(dǎo)航器調(diào)用Configuration類從配置文件中取出配置信息,根據(jù)配置信息,創(chuàng)建管理器(Views Manager)。然后,Manager調(diào)用Navigator的NavigateEvent事件,獲得應(yīng)用程序要顯示的和下一個要顯示的頁面。此時,可以調(diào)用State類中的Save方法,將狀態(tài)保存到數(shù)據(jù)庫中。另外,導(dǎo)航器也可以調(diào)用適當(dāng)?shù)?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/視圖">視圖管理器中的ActiveView方法,將視圖名字傳給視圖管理器。ActiveView方法負(fù)責(zé)創(chuàng)建,顯示視圖。視圖顯示之后,等待用戶在界面中執(zhí)行一個動作。如果用戶執(zhí)行了一個動作,就通過調(diào)用業(yè)務(wù)邏輯,處理后就會將結(jié)果返回頁面。
          使用開發(fā)應(yīng)用程序可以很方便地控制和改變業(yè)務(wù)流程,此時只需要修改配置文件即可;可以實現(xiàn)狀態(tài)管理,保持頁面間狀態(tài)的連貫性,捕獲用戶與應(yīng)用程序交互的狀態(tài),根據(jù)保存的狀態(tài)信息,用戶可以在任何時間、地點、機器繼續(xù)未完成的操作。



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();