一種信息交互架構(gòu)及方法
【專利摘要】本發(fā)明提供一種信息交互架構(gòu)及方法,上述架構(gòu)包括模型控制層、路由層、實體層、顯示層;其中,所述模型控制層分別與所述路由層、所述實體層、所述顯示層相連;所述實體層還與所述顯示層直接相連。上述方法包括以下步驟:客戶端頁面初始載入時,從服務(wù)器獲取頁面相關(guān)信息;客戶端根據(jù)獲取的所述頁面相關(guān)信息,創(chuàng)建頁面對象;客戶端頁面打開時,路由層檢測頁面地址及頁面跳轉(zhuǎn)地址合法后,觸發(fā)模型控制層從實體層獲取數(shù)據(jù),通過顯示層進行顯示。本發(fā)明為前端的web開發(fā)提供了一種高效、易用且耦合性低的開發(fā)框架模型,減少了與后臺服務(wù)器交互的次數(shù),大大節(jié)約了時間和系統(tǒng)資源。
【專利說明】一種信息交互架構(gòu)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于信息交互領(lǐng)域,尤其涉及一種信息交互架構(gòu)及方法。
【背景技術(shù)】
[0002]MVC全名是(Model View Controller,模型視圖控制器)是模型(model)、視圖(view)和控制器(controller)的縮寫,一種軟件設(shè)計典范;MVC模式最早由TrygveReenskaug在1978年提出,是施樂帕羅奧多研宄中心(Xerox PARC)在20世紀80年代為程序語言Smalltalk所發(fā)明的一種軟件設(shè)計模式。MVC模式的目的是實現(xiàn)一種動態(tài)的程式設(shè)計,使后續(xù)對程序的修改和擴展簡化,并且使程序某一部分的重復利用成為可能。除此之夕卜,此模式通過對復雜度的簡化,使程序結(jié)構(gòu)更加直觀。
[0003]JavaScript,也稱ECMAScript,是一種廣泛用于客戶端網(wǎng)頁開發(fā)的腳本語言,最早是在HTML上使用的,用來給HTML網(wǎng)頁添加動態(tài)功能。JavaScript是一種腳本語言,其源代碼在發(fā)往客戶端運行之前不需經(jīng)過編譯,而是將文本格式的字符代碼發(fā)送給瀏覽器由瀏覽器解釋運行。JavaScript常用來完成以下任務(wù):嵌入動態(tài)文本于HTML頁面1、對瀏覽器事件作出響應(yīng)2、讀寫HTML元素3、在數(shù)據(jù)被提交到服務(wù)器之前驗證數(shù)據(jù)3、檢測訪客的瀏覽器信息4、控制cookies,包括創(chuàng)建和修改等。
[0004]傳統(tǒng)的Web應(yīng)用程序,迫使用戶在每次與服務(wù)器交互時都必須下載一個新的頁面,這意味著每次交互的時間不可能比你到用戶之間的延時更快了并且往往更慢,使用AJAX替換頁面中的一些部分,在一定程度上起到了作用,但是在每次頁面數(shù)據(jù)需要更新時,仍然需要一次到服務(wù)器的往返;并且如果頁面中的許多部分需要同時更新,絕大部分開發(fā)者又會采取重新載入頁面的方式了。這樣信息交互模式對于浪費了大量的時間資源,用戶體驗大大降低。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供一種信息交互架構(gòu)及方法,以解決上述問題。
[0006]本發(fā)明提供一種信息交互架構(gòu)。上述架構(gòu)包括模型控制層、路由層、實體層、顯示層;其中,所述模型控制層分別與所述路由層、所述實體層、所述顯示層相連;所述實體層還與所述顯示層直接相連。
[0007]本發(fā)明還提供一種信息交互方法,上述方法包括以下步驟:
[0008]客戶端頁面初始載入時,從服務(wù)器獲取頁面相關(guān)信息;
[0009]客戶端根據(jù)獲取的所述頁面相關(guān)信息,創(chuàng)建頁面對象;
[0010]客戶端頁面打開時,路由層檢測頁面地址及頁面跳轉(zhuǎn)地址合法后,觸發(fā)模型控制層從實體層獲取數(shù)據(jù),通過顯示層進行顯示。
[0011]相較于先前技術(shù),根據(jù)本發(fā)明提供的一種信息交互架構(gòu)及方法,為前端的web開發(fā)提供了一種高效、易用且耦合性低的開發(fā)框架模型,減少了與后臺服務(wù)器交互的次數(shù),大大節(jié)約了時間和系統(tǒng)資源。
【專利附圖】
【附圖說明】
[0012]此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
[0013]圖1所示為本發(fā)明實施例1的信息交互架構(gòu)示意圖;
[0014]圖2所示為本發(fā)明實施例2的信息交互方法流程圖。
【具體實施方式】
[0015]下文中將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。
[0016]圖1所示為本發(fā)明實施例1的信息交互架構(gòu)示意圖,包括:模型控制層、路由層、實體層、顯示層;其中,所述模型控制層分別與所述路由層、所述實體層、所述顯示層相連;所述實體層還與所述顯示層直接相連;
[0017]所述模型控制層,用于對實體層中的數(shù)據(jù)進行操作。
[0018]所述路由層,用于管理應(yīng)用程序狀態(tài)和用戶導航所需資源。當應(yīng)用程序啟動時,路由層負責顯示模板、加載數(shù)據(jù)以及管理應(yīng)用程序狀態(tài)。
[0019]實體層,用于表示應(yīng)用程序的對象并且映射各個屬性值和底層數(shù)據(jù)的依賴關(guān)系。
[0020]顯示層,用于加載相應(yīng)的模板的頁面,用于數(shù)據(jù)的展示;還用于實時監(jiān)測實體層的變化,并將最新的數(shù)據(jù)變化反映到用戶界面中。
[0021]上述架構(gòu),還包括狀態(tài)管理層;所述狀態(tài)管理層分別與所述模型控制層、所述顯示層相連;
[0022]所述狀態(tài)管理層,用于對用戶狀態(tài)進行管理,例如某個用戶是已注銷還是登錄。
[0023]圖2所示為本發(fā)明實施例2的信息交互方法流程圖,包括以下步驟:
[0024]步驟201:客戶端頁面初始載入時,從服務(wù)器獲取頁面相關(guān)信息;
[0025]頁面相關(guān)信息包括:頁面應(yīng)用邏輯信息、頁面結(jié)構(gòu)信息、頁面數(shù)據(jù)信息。
[0026]步驟202:客戶端根據(jù)獲取的所述頁面相關(guān)信息,創(chuàng)建頁面對象;
[0027]客戶端根據(jù)獲取的所述頁面相關(guān)信息,創(chuàng)建頁面對象的過程為:客戶端根據(jù)獲取的所述頁面應(yīng)用邏輯信息,創(chuàng)建Javascript應(yīng)用邏輯庫;客戶端根據(jù)獲取的所述頁面結(jié)構(gòu)信息,創(chuàng)建為用戶展示的html頁面;客戶端獲取所述頁面數(shù)據(jù)信息后,同時在實體層進行封裝并存儲。
[0028]在實際應(yīng)用過程中,實體層可以通過存儲模塊來實現(xiàn)。
[0029]步驟203:客戶端頁面打開時,路由層檢測頁面地址及頁面跳轉(zhuǎn)地址合法后,觸發(fā)模型控制層從實體層獲取數(shù)據(jù),通過顯示層進行顯示。
[0030]在實際應(yīng)用過程中,路由層可以通過路由模塊進行實現(xiàn);模型控制層可以通過處理模塊進行實現(xiàn)。
[0031 ] 客戶端頁面打開時,路由層檢測頁面URL觸發(fā)地址及其跳轉(zhuǎn)URL合法后,觸發(fā)模型控制層從實體層獲取數(shù)據(jù),通過顯示層進行顯示。
[0032]路由層檢測頁面地址及頁面跳轉(zhuǎn)地址合法后,還可以進一步驗證用戶的登錄狀
--τ O
[0033]模型控制層從實體層獲取的數(shù)據(jù)是指:模型控制層對實體層的數(shù)據(jù)進行增加、修改、刪除或查詢操作后,獲得的數(shù)據(jù)。
[0034]URL (Uniform Resource Locator,統(tǒng)一資源定位符)。
[0035]客戶端頁面打開時,路由層檢測頁面地址及頁面跳轉(zhuǎn)地址合法后,觸發(fā)模型控制層從實體層獲取數(shù)據(jù),通過顯示層進行顯示后,若用戶狀態(tài)發(fā)生變化,則觸發(fā)模型控制層從狀態(tài)管理層獲取用戶狀態(tài)數(shù)據(jù),通過顯示層進行顯示。
[0036]若用戶狀態(tài)發(fā)生變化,則觸發(fā)模型控制層從狀態(tài)管理層獲取用戶狀態(tài)數(shù)據(jù),通過顯示層進行顯示的過程為:
[0037]若用戶狀態(tài)發(fā)生變化,狀態(tài)管理層向所述模型控制層發(fā)送通知消息;
[0038]所述模型控制層接收所述通知消息后,向所述狀態(tài)管理層發(fā)送用戶狀態(tài)數(shù)據(jù)請求;
[0039]所述狀態(tài)管理層接收所述用戶狀態(tài)數(shù)據(jù)請求后,向所述模型控制層反饋用戶狀態(tài)數(shù)據(jù)請求響應(yīng)消息;其中,所述用戶狀態(tài)數(shù)據(jù)請求響應(yīng)消息中攜帶用戶狀態(tài)數(shù)據(jù)。
[0040]在具體實現(xiàn)時,狀態(tài)管理層可以通過狀態(tài)管理模塊進行實現(xiàn)。
[0041]相較于先前技術(shù),根據(jù)本發(fā)明提供的一種信息交互架構(gòu)及方法,為前端的web開發(fā)提供了一種高效、易用且耦合性低的開發(fā)框架模型,減少了與后臺服務(wù)器交互的次數(shù),大大節(jié)約了時間和系統(tǒng)資源。
[0042]以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種信息交互架構(gòu),其特征在于,包括模型控制層、路由層、實體層、顯示層;其中,所述模型控制層分別與所述路由層、所述實體層、所述顯示層相連;所述實體層還與所述顯示層直接相連。
2.根據(jù)權(quán)利要求1所述的架構(gòu),其特征在于,還包括狀態(tài)管理層;所述狀態(tài)管理層分別與所述模型控制層、所述顯示層相連。
3.根據(jù)權(quán)利要求2所述的架構(gòu),其特征在于:所述模型控制層,用于對實體層中的數(shù)據(jù)進行操作;所述路由層,用于管理應(yīng)用程序狀態(tài)和用戶導航所需資源;所述實體層,用于表示應(yīng)用程序的對象并且映射各個屬性值和底層數(shù)據(jù)的依賴關(guān)系;所述狀態(tài)管理層,用于對用戶狀態(tài)進行管理。
4.一種應(yīng)用權(quán)利要求1-3中任一項所述架構(gòu)的方法,其特征在于: 客戶端頁面初始載入時,從服務(wù)器獲取頁面相關(guān)信息; 客戶端根據(jù)獲取的所述頁面相關(guān)信息,創(chuàng)建頁面對象; 客戶端頁面打開時,路由層檢測頁面地址及頁面跳轉(zhuǎn)地址合法后,觸發(fā)模型控制層從實體層獲取數(shù)據(jù),通過顯示層進行顯示。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于:所述頁面相關(guān)信息包括:頁面應(yīng)用邏輯信息、頁面結(jié)構(gòu)信息、頁面數(shù)據(jù)信息。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于:客戶端根據(jù)獲取的所述頁面相關(guān)信息,創(chuàng)建頁面對象的過程為: 客戶端根據(jù)獲取的所述頁面應(yīng)用邏輯信息,創(chuàng)建Javascript應(yīng)用邏輯庫;客戶端根據(jù)獲取的所述頁面結(jié)構(gòu)信息,創(chuàng)建為用戶展示的html頁面;客戶端獲取所述頁面數(shù)據(jù)信息后,同時在實體層進行封裝并存儲。
7.根據(jù)權(quán)利要求4所述的方法,其特征在于:模型控制層從實體層獲取的數(shù)據(jù)是指:模型控制層對實體層的數(shù)據(jù)進行增加、修改、刪除或查詢操作后,獲得的數(shù)據(jù)。
8.根據(jù)權(quán)利要求4所述的方法,其特征在于:客戶端頁面打開時,路由層檢測頁面地址及頁面跳轉(zhuǎn)地址合法后,觸發(fā)模型控制層從實體層獲取數(shù)據(jù),通過顯示層進行顯示后,若用戶狀態(tài)發(fā)生變化,則觸發(fā)模型控制層從狀態(tài)管理層獲取用戶狀態(tài)數(shù)據(jù),通過顯示層進行顯不O
9.根據(jù)權(quán)利要求8所述的方法,其特征在于:若用戶狀態(tài)發(fā)生變化,則觸發(fā)模型控制層從狀態(tài)管理層獲取用戶狀態(tài)數(shù)據(jù),通過顯示層進行顯示的過程為: 若用戶狀態(tài)發(fā)生變化,狀態(tài)管理層向所述模型控制層發(fā)送通知消息; 所述模型控制層接收所述通知消息后,向所述狀態(tài)管理層發(fā)送用戶狀態(tài)數(shù)據(jù)請求; 所述狀態(tài)管理層接收所述用戶狀態(tài)數(shù)據(jù)請求后,向所述模型控制層反饋用戶狀態(tài)數(shù)據(jù)請求響應(yīng)消息;其中,所述用戶狀態(tài)數(shù)據(jù)請求響應(yīng)消息中攜帶用戶狀態(tài)數(shù)據(jù)。
10.根據(jù)權(quán)利要求4所述的方法,其特征在于:路由層檢測頁面地址及頁面跳轉(zhuǎn)地址合法后,還可以進一步驗證用戶的登錄狀態(tài)。
【文檔編號】G06F9/44GK104461509SQ201410643630
【公開日】2015年3月25日 申請日期:2014年11月10日 優(yōu)先權(quán)日:2014年11月10日
【發(fā)明者】高濱, 高飛, 王帥 申請人:浪潮(北京)電子信息產(chǎn)業(yè)有限公司