Java EE 6:JSF與Servlet + JSP。我應(yīng)該學(xué)習(xí)JSF嗎?
基本上,JSF使您能夠僅使用模型對(duì)象(JavaBeans)和視圖(JSP / XHTML頁面)開發(fā)Web應(yīng)用程序。使用“普通香草” JSP /Servlet,您將必須引入許多代碼來控制,預(yù)處理,后處理,收集數(shù)據(jù),驗(yàn)證,轉(zhuǎn)換,監(jiān)聽等HTTP請(qǐng)求和響應(yīng)。然后,我并不是說要對(duì)其進(jìn)行高度(抽象)的重構(gòu),以便您也能以與JSF相同的方式結(jié)束(每個(gè)用例只是一個(gè)JavaBean類和一個(gè)JSP/ XHTML頁面)。
解決方法我試圖通過閱讀http://java.sun.com/javaee/6/docs/tutorial/doc/gexaf.html來熟悉JavaEE 6 。我對(duì)使用JSF感到有些困惑。通常,在我開發(fā)WebApp的方式中,Servlet將充當(dāng)控制器,而JSP將充當(dāng)MVC模型中的View。那么,JSF是否嘗試替換此結(jié)構(gòu)?以下是上述教程的報(bào)價(jià):
Servlet最適合于面向服務(wù)的App,而面向演示的App的控制功能(如調(diào)度請(qǐng)求) 更適合于生成JSF和Facelet,如XHTML等標(biāo)記,通常用于面向演示的App
不知道我是否對(duì)上述引用理解得太清楚,他們沒有很好地解釋什么是面向服務(wù)的與面向表示的。
JavaServer Faces應(yīng)用程序可以將HTTP請(qǐng)求映射到特定于組件的事件處理,并將組件作為服務(wù)器上的有狀態(tài)對(duì)象進(jìn)行管理。
有經(jīng)驗(yàn)的Java開發(fā)人員可以為我提供有關(guān)JSF,JSP和Servlet的快速概述嗎?是否將它們?nèi)考稍谝黄穑€是在App的基礎(chǔ)上單獨(dú)使用它們?如果是這樣,那么與Servlet和JSP相比,哪種應(yīng)用程序使用JSF?
JavaServer Faces應(yīng)用程序可以將HTTP請(qǐng)求映射到特定于組件的事件處理,并將組件作為服務(wù)器上的有狀態(tài)對(duì)象進(jìn)行管理。
聽起來像servlet可以做什么,但不確定manage components as stateful objects on theserver。甚至不確定那是什么意思?提前致謝。
相關(guān)文章:
1. 求救一下,用新版的phpstudy,數(shù)據(jù)庫(kù)過段時(shí)間會(huì)消失是什么情況?2. mysql - 如何在有自增id的情況下,讓其他某些字段能不重復(fù)插入3. python小白,關(guān)于函數(shù)問題4. django - Python error: [Errno 99] Cannot assign requested address5. javascript - webpack1和webpack2有什么區(qū)別?6. node.js - win 下 npm install 遇到了如下錯(cuò)誤 會(huì)導(dǎo)致 無法 run dev么?7. [python2]local variable referenced before assignment問題8. angular.js - 百度支持_escaped_fragment_嗎?9. python小白 關(guān)于類里面的方法獲取變量失敗的問題10. Python2中code.co_kwonlyargcount的等效寫法
