JAVA工程師面試必須知道的

JAVA工程師面試必須知道的

ID:37826678

大?。?87.48 KB

頁數(shù):8頁

時(shí)間:2019-05-31

JAVA工程師面試必須知道的_第1頁
JAVA工程師面試必須知道的_第2頁
JAVA工程師面試必須知道的_第3頁
JAVA工程師面試必須知道的_第4頁
JAVA工程師面試必須知道的_第5頁
資源描述:

《JAVA工程師面試必須知道的》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、MVC框架MVC全名是ModelViewController,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設(shè)計(jì)典范,用于組織代碼用一種業(yè)務(wù)邏輯和數(shù)據(jù)顯示分離的方法,這個(gè)方法的假設(shè)前提是如果業(yè)務(wù)邏輯被聚集到一個(gè)部件里面,而且界面和用戶圍繞數(shù)據(jù)的交互能被改進(jìn)和個(gè)性化定制而不需要重新編寫業(yè)務(wù)邏輯。MVC被獨(dú)特的發(fā)展起來用于映射傳統(tǒng)的輸入、處理和輸出功能在一個(gè)邏輯的圖形化用戶界面的結(jié)構(gòu)中。目錄1簡介2框架內(nèi)容1.2.1視圖2.2.2模型3.2.3控制器3區(qū)別4常見MVC1.4.1Struts2.4.2Spring3.4.3ZF4.4.4.NE

2、T5特點(diǎn)1.5.1優(yōu)點(diǎn)2.5.2缺點(diǎn)6外界評價(jià)7Mvc控件簡介MVC開始是存在于桌面程序中的,M是指業(yè)務(wù)模型,V是指用戶界面,C則是控制器,使用MVC的目的是將M和V的實(shí)現(xiàn)代碼分離,從而使同一個(gè)程序可以使用不同的表現(xiàn)形式。比如一批統(tǒng)計(jì)數(shù)據(jù)可以分別用柱狀圖、餅圖來表示。C存在的目[1-2]的則是確保M和V的同步,一旦M改變,V應(yīng)該同步更新。模型-視圖-控制器(MVC)是XeroxPARC在二十世紀(jì)八十年代為編程語言Smalltalk-80發(fā)明的一種軟件設(shè)計(jì)模式,已被廣泛使用。后來被推薦為Oracle旗下Sun公司JavaEE平臺的設(shè)計(jì)模式,并且受到越來越多的使用ColdFusi

3、on和PHP的開發(fā)者的歡迎。模型-視圖-控制器模式是一個(gè)有用的工具箱,它有很[3]多好處,但也有一些缺點(diǎn)。[4](概述內(nèi)容來源:)2框架內(nèi)容MVC是一個(gè)框架模式,它強(qiáng)制性的使應(yīng)用程序的輸入、處理和輸出分開。使用MVC應(yīng)用程序被分成三個(gè)核心部件:模型、視圖、控制器。它們各自處理自己的任務(wù)。[5]最典型的MVC就是JSP+servlet+javabean的模式。視圖視圖是用戶看到并與之交互的界面。對老式的Web應(yīng)用程序來說,視圖就是由HTML元素組成的界面,在新式的Web應(yīng)用程序中,HTML依舊在視圖中扮演著重要的角色,但一些新的技術(shù)已層出不窮,它們包括AdobeFlash和像X

4、HTML,XML/XSL,WML等一些標(biāo)識語言和Webservices.MVC好處是它能為應(yīng)用程序處理很多不同的視圖。在視圖中其實(shí)沒有真正的處理發(fā)生,不管這些數(shù)據(jù)是聯(lián)機(jī)存儲的還是一個(gè)雇員列表,作為視圖來講,它只是作[6]為一種輸出數(shù)據(jù)并允許用戶操縱的方式。模型模型表示企業(yè)數(shù)據(jù)和業(yè)務(wù)規(guī)則。在MVC的三個(gè)部件中,模型擁有最多的處理任務(wù)。例如它可能用像EJBs和ColdFusionComponents這樣的構(gòu)件對象來處理數(shù)據(jù)庫,被模型返回的數(shù)據(jù)是中立的,就是說模型與數(shù)據(jù)格式無關(guān),這樣一個(gè)模型能為多個(gè)視圖提供數(shù)據(jù),由于應(yīng)用于模型的代碼只需寫一次就可以被多個(gè)視圖重用,所[6]以減少了代

5、碼的重復(fù)性??刂破骺刂破鹘邮苡脩舻妮斎氩⒄{(diào)用模型和視圖去完成用戶的需求,所以當(dāng)單擊Web頁面中的超鏈接和發(fā)送HTML表單時(shí),控制器本身不輸出任何東西和做任何處理。它只是接收請求并決定調(diào)用哪個(gè)模型構(gòu)件去處理請求,然后再確定用哪個(gè)視圖來[6]顯示返回的數(shù)據(jù)。3區(qū)別框架模式和設(shè)計(jì)模式的區(qū)別有很多程序員往往把框架模式和設(shè)計(jì)模式混淆,認(rèn)為MVC是一種設(shè)計(jì)模式。實(shí)際[7]上它們完全是不同的概念??蚣?、設(shè)計(jì)模式這兩個(gè)概念總?cè)菀妆换煜?,其?shí)它們之間還是有區(qū)別的??蚣芡ǔJ谴a重用,而設(shè)計(jì)模式是設(shè)計(jì)重用,架構(gòu)則介于兩者之間,部分代碼重用,部分設(shè)計(jì)重用,有時(shí)分析也可重用。在軟件生產(chǎn)中有三種級別的

6、重用:內(nèi)部重用,即在同一應(yīng)用中能公共使用的抽象塊;代碼重用,即將通用模塊組合成庫或工具集,以便在多個(gè)應(yīng)用和領(lǐng)域都能使用;應(yīng)用框架的重用,即為專用領(lǐng)域提供通用的或現(xiàn)成的基礎(chǔ)結(jié)構(gòu),以獲得最高級別的重用性。框架與設(shè)計(jì)模式雖然相似,但卻有著根本的不同。設(shè)計(jì)模式是對在某種環(huán)境中反復(fù)出現(xiàn)的問題以及解決該問題的方案的描述,它比框架更抽象;框架可以用代碼表示,也能直接執(zhí)行或復(fù)用,而對模式而言只有實(shí)例才能用代碼表示;設(shè)計(jì)模式是比框架更小的元素,一個(gè)框架中往往含有一個(gè)或多個(gè)設(shè)計(jì)模式,框架總是針對某一特定應(yīng)用領(lǐng)域,但同一模式卻可適用于各種應(yīng)用??梢哉f,框架是軟件,而設(shè)計(jì)模式是軟件的知識。框架模式有

7、哪些?MVC、MTV、MVP、CBD、ORM等等;框架有哪些?C++語言的QT、MFC、gtk,Java語言的SSH、SSI,php語言的smarty(MVC模式),python語言的django(MTV模式)等等設(shè)計(jì)模式有哪些?工廠模式、適配器模式、策略模式等等簡而言之:設(shè)計(jì)模式是大智慧,用來對軟件設(shè)計(jì)進(jìn)行分工;框架模式是小技巧,對具體問題提出解決方案,以提高代碼復(fù)用率,降低耦合度。4常見MVCStrutsStruts是Apache軟件基金下Jakarta項(xiàng)目的一部分。Struts框架的主要架構(gòu)設(shè)計(jì)和

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會顯示錯(cuò)亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。