數(shù)智賦能,全場(chǎng)景覆蓋
千行百業(yè)共同使用的數(shù)智協(xié)同辦公平臺(tái)
OA智庫(kù)
OA辦公系統(tǒng)
--產(chǎn)品體驗(yàn)--
下載試用
在線(xiàn)試用
--聯(lián)系方式--
全國(guó)免費(fèi)咨詢(xún)電話(huà)
400-609-0086
地址:大連高新技術(shù)產(chǎn)業(yè)園區(qū)信達(dá)街31號(hào)航天大廈12層
總機(jī):(86)0411-84766277
傳真:(86)0411-84766277-6000
MAIL:sales@oa8000.com
查看各地區(qū)咨詢(xún)電話(huà) >
首頁(yè) > 研究院 > OA智庫(kù) > [IT168]探討OA軟件熱門(mén)實(shí)用技術(shù)之一:MVC架構(gòu)
[IT168]探討OA軟件熱門(mén)實(shí)用技術(shù)之一:MVC架構(gòu)
      以前有人說(shuō)OA軟件的技術(shù)含量比較低,所以競(jìng)爭(zhēng)很混亂,確實(shí)有點(diǎn)道理,但現(xiàn)在有實(shí)力的OA廠商們?cè)絹?lái)越注重對(duì)先進(jìn)技術(shù)的使用,逐漸提升了自己的產(chǎn)品實(shí)力,拉開(kāi)了與競(jìng)爭(zhēng)者之間的差距。 本文將從發(fā)展的角度探討近年來(lái)應(yīng)用在OA軟件上的一系列熱門(mén)技術(shù),這些技術(shù)對(duì)用戶(hù)的使用將發(fā)揮重要價(jià)值。 

      MVC(Model/View/Controller)架構(gòu)并不是一種新興技術(shù)或者新興思想,它是Xerox PARC在八十年代為編程語(yǔ)言Smalltalk-80發(fā)明的一種軟件設(shè)計(jì)模式,最近幾年被推薦為Sun公司J2EE平臺(tái)的設(shè)計(jì)模式,并且受到越來(lái)越多的使用,在國(guó)內(nèi),尤其是OA軟件領(lǐng)域也得到了充分的應(yīng)用。

      先簡(jiǎn)要介紹一下MVC架構(gòu)的內(nèi)容和工作過(guò)程: 

      1、模型(Model): 模型是應(yīng)用程序的主體部分。模型表示業(yè)務(wù)數(shù)據(jù),或者業(yè)務(wù)邏輯。在MVC的三個(gè)部件中,模型擁有最多的處理任務(wù)。例如它可能用象EJBs和ColdFusion Components這樣的構(gòu)件對(duì)象來(lái)處理數(shù)據(jù)庫(kù)。被模型返回的數(shù)據(jù)是中立的,就是說(shuō)模型與數(shù)據(jù)格式無(wú)關(guān),這樣一個(gè)模型能為多個(gè)視圖提供數(shù)據(jù)。由于應(yīng)用于模型的代碼只需寫(xiě)一次就可以被多個(gè)視圖重用,所以減少了代碼的重復(fù)性。 

      2、視圖(View): 視圖是應(yīng)用程序中用戶(hù)界面相關(guān)的部分,是用戶(hù)看到并與之交互的界面。如何處理應(yīng)用程序的界面變得越來(lái)越有挑戰(zhàn)性。MVC一個(gè)大的好處是它能為你的應(yīng)用程序處理很多不同的視圖。在視圖中其實(shí)沒(méi)有真正的處理發(fā)生,不管這些數(shù)據(jù)是聯(lián)機(jī)存儲(chǔ)的還是一個(gè)雇員列表,作為視圖來(lái)講,它只是作為一種輸出數(shù)據(jù)并允許用戶(hù)操縱的方式。 

      3、控制器(controller): 控制器工作就是根據(jù)用戶(hù)的輸入,控制用戶(hù)界面數(shù)據(jù)顯示和更新model對(duì)象狀態(tài)??刂破鹘邮苡脩?hù)的輸入并調(diào)用模型和視圖去完成用戶(hù)的需求。所以當(dāng)單擊Web頁(yè)面中的超鏈接和發(fā)送HTML表單時(shí),控制器本身不輸出任何東西和做任何處理。它只是接收請(qǐng)求并決定調(diào)用哪個(gè)模型構(gòu)件去處理請(qǐng)求,然后用確定用哪個(gè)視圖來(lái)顯示模型處理返回的數(shù)據(jù)。 

      簡(jiǎn)單來(lái)說(shuō)MVC的工作過(guò)程,首先控制器接收用戶(hù)的請(qǐng)求,并決定應(yīng)該調(diào)用哪個(gè)模型來(lái)進(jìn)行處理,然后模型用業(yè)務(wù)邏輯來(lái)處理用戶(hù)的請(qǐng)求并返回?cái)?shù)據(jù),最后控 制器用相應(yīng)的視圖格式化模型返回的數(shù)據(jù),并通過(guò)表示層呈現(xiàn)給用戶(hù)。 

      通過(guò)實(shí)例來(lái)看看MVC架構(gòu)的好處: 

      華天軟件作為一個(gè)注重技術(shù)優(yōu)勢(shì)的公司,是國(guó)內(nèi)最早采用MVC架構(gòu)的OA廠商之一,通過(guò)在其網(wǎng)站上(myjourneytoamillion.com)公布的DEMO版本,我們可以看出采用該體系結(jié)構(gòu)的最大的好處是:數(shù)據(jù)與控制層與界面相互分離。 

      1、這是最重要的,多個(gè)視圖能共享一個(gè)模型,現(xiàn)在需要用越來(lái)越多的方式來(lái)訪(fǎng)問(wèn)你的應(yīng)用程序。對(duì)此,一個(gè)好的辦法就是使用MVC,無(wú)論用戶(hù)想要Flash界面或是 WAP 界面,用一個(gè)模型就能處理它們。由于已經(jīng)將數(shù)據(jù)和業(yè)務(wù)規(guī)則從表示層分開(kāi),所以你可以最大化的重用你的代碼了,這就大大提升了對(duì)用戶(hù)個(gè)性化需求的響應(yīng)速度。 華天OA系統(tǒng)比傳統(tǒng)的MVC更進(jìn)一步,界面層沒(méi)有一行程序代碼。不象傳統(tǒng)的JAVA程序,前端是JSP,后端是Java Bean。實(shí)現(xiàn)了界面層與控制層的完全分離,用戶(hù)即使不懂程序開(kāi)發(fā)也能更改界面。華天OA系統(tǒng)前端沒(méi)有一行JAVA和JSP代碼,是純HTML和文本文件。所以,界面的改動(dòng)將異常簡(jiǎn)單。他們?cè)谧约旱姆桨咐锩娉兄Z:換掉所有的界面,僅需要10天。 

      2、因?yàn)槟P褪亲园?,并且與控制器和視圖相分離,所以很容易改變你的應(yīng)用程序的數(shù)據(jù)層和業(yè)務(wù)規(guī)則。比如你想把你的數(shù)據(jù)庫(kù)從MySQL移植到Oracle,或者改變你的基于RDBMS數(shù)據(jù)源到LDAP,只需改變你的模型即可。由于運(yùn)用MVC的應(yīng)用程序的三個(gè)部件是相互對(duì)立,改變其中一個(gè)不會(huì)影響其它兩個(gè),所以依據(jù)這種設(shè)計(jì)思想能構(gòu)造良好的松偶合的構(gòu)件。 

      在華天OA的數(shù)據(jù)層,可通過(guò)中間件進(jìn)行溝通,這樣不需要書(shū)寫(xiě)任何一行代碼,通過(guò)簡(jiǎn)單的類(lèi)與數(shù)據(jù)庫(kù)表的映射實(shí)現(xiàn)數(shù)據(jù)庫(kù)表的增刪改。整個(gè)程序中沒(méi)有一條SQL語(yǔ)句,不修改代碼就可實(shí)現(xiàn)自動(dòng)切換到各種數(shù)據(jù)庫(kù)類(lèi)型(如MySQL/SQLSERVER/ORACLE)。 

      3、可以使用控制器來(lái)聯(lián)接不同的模型和視圖去完成用戶(hù)的需求,這樣控制器可以為構(gòu)造應(yīng)用程序提供強(qiáng)有力的手段,這樣能夠極大的提升開(kāi)發(fā)效率,并且保證系統(tǒng)的穩(wěn)定性。 

      4、通過(guò)標(biāo)簽定義實(shí)現(xiàn)與業(yè)務(wù)層的連接。在HTML頁(yè)面中,沒(méi)有一行程序代碼,只有標(biāo)簽定義。如果頁(yè)面需要變更,只須更改標(biāo)簽與業(yè)務(wù)層的連接關(guān)系。 

      5、內(nèi)部通過(guò)獨(dú)立的子工程管理,這樣既能保證各個(gè)子工程的系統(tǒng)獨(dú)立性,又能確保對(duì)系統(tǒng)的整體管理。 

     6、通過(guò)頁(yè)面與程序的分離,實(shí)現(xiàn)了多語(yǔ)言和多風(fēng)格的不同展示系統(tǒng)。 
關(guān)鍵詞: 華天 OA系統(tǒng) OA實(shí)用技術(shù)
在線(xiàn)客服
400-609-0086
全國(guó)咨詢(xún)熱線(xiàn)
400-609-0086
在線(xiàn)咨詢(xún)
咨詢(xún)電話(huà)
在線(xiàn)留言
網(wǎng)站導(dǎo)航
返回頂部
專(zhuān)注OA,更懂政企
基于OA協(xié)同系統(tǒng)深拓產(chǎn)品邊界,覆蓋87+細(xì)分行業(yè),99+垂直應(yīng)用,專(zhuān)業(yè)聚焦,助力各類(lèi)組織快速構(gòu)建數(shù)字化應(yīng)用場(chǎng)景。
×
歡迎來(lái)到華天動(dòng)力
請(qǐng)留下您的聯(lián)系方式,我們的專(zhuān)屬顧問(wèn)會(huì)在1個(gè)工作日內(nèi)和您聯(lián)系
* 企業(yè)全稱(chēng)
* 您的姓名
* 手機(jī)號(hào)碼
* 驗(yàn)證碼
注冊(cè)
預(yù)約體驗(yàn)
留下您的聯(lián)系方式,我們的專(zhuān)屬顧問(wèn)會(huì)在1個(gè)工作日內(nèi)和您聯(lián)系
姓名*
電話(huà)*
公司名稱(chēng)
現(xiàn)在預(yù)約