成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

簡單理解兩種JSP體系結構

開發(fā) 后端
最近已經(jīng)有了很多相關的介紹,JSP正在成為一種卓越的Java技術,可用于創(chuàng)建動態(tài)Web應用程序。本文將介紹種JSP體系結構。

Java程序員之所以喜愛JSP有數(shù)不清的理由。有些人喜歡它為交互式頁面帶來的“一次編寫,處處使用”的方式;還有些人欣賞它是因為它容易學習,并且使他們可以把Java作為一種服務器端腳本語言來使用。但更多的還都是因為一個共同原因??使用JSP的***好處是它能幫助你有效地把表達與內(nèi)容分離開。在本文中,我對下面的問題作了深入探討,那就是,如何使用JSP體系結構獲得***的表達-內(nèi)容分離效果。

這個模型也可以被看作是通用MVC設計模式在服務器端的一個實現(xiàn)。請注意,在閱讀本文之前,你需要熟悉基本的JSP和servlet編程,因為文中將不會涉及到任何語法規(guī)則問題。

Servlets有什么問題?

盡管JSP在動態(tài)Web內(nèi)容服務和分離內(nèi)容與表達上可以做得非常好,但仍然會有人置疑,為什么要把servlets丟在一邊呢?其實servlets的作用不容置疑。它們在服務器端處理上做得很優(yōu)秀,而且,由于它們已有了堅實的基礎,所以仍將被保留。實際上,從結構上講,你可以把JSP看作是servlets的一種高級抽象,就像Servlet2.1 API的一種擴充一樣來實現(xiàn)。然而,你也不應當濫用servlets,它們并非對每個人都適用。舉個例子,如果網(wǎng)頁設計者能夠很容易地用傳統(tǒng)HTML或XML工具寫出JSP頁的話,servlets就更適合那些后臺程序的開發(fā)者,因為servlets通常是用集成開發(fā)環(huán)境(IDE)編寫的??一般來說這種方式需要更高級的編程技能。

在運用servlets時,即使是開發(fā)者也必須小心謹慎以確保表達和內(nèi)容不存在緊密的聯(lián)系。要做到這一點,你通常可以使用第三方HTML包(比如htmlKona)來混合代碼。但即便是這種方法,盡管它通過簡單的屏幕變換帶來了一些靈活性,卻無法幫你避免表達格式本身的改動。例如,如果你的表達格式從HTML變?yōu)镈HTML,你就必須確保那些語言包適應新的格式。假設一種最壞的情況,如果一個包不可用,你也許將不得不忙于在動態(tài)內(nèi)容中艱難地編寫表達,這會把你累死。那么,如何解決這個問題呢?接下來你將看到,使用JSP與servlets技術相結合是構建應用系統(tǒng)地一種好方法。不同的體系,早期的JSP體系結構規(guī)范提出了兩種用JSP技術建立應用程序的方式。這兩種方式在術語中分別稱作JSP Model 1 和JSP Model 2,它們的本質區(qū)別在于處理批量請求的位置不同。在Model 1體系中,如圖1所示,jsp頁面獨自響應請求并將處理結果返回客戶。這里仍然存在表達與內(nèi)容的分離,因為所以的數(shù)據(jù)存取都是由bean來完成的。

盡管Model 1體系十分 適合簡單應用的需要,它卻不能滿足復雜的大型應用程序的實現(xiàn)。不加選擇地隨意運用Model 1,會導致JSP頁內(nèi)被嵌入大量的腳本片段或Java代碼,特別是當需要處理的請求量很大時,情況更為嚴重。盡管這對于Java程序員來說可能不是什么大問題,但如果JSP頁面是由網(wǎng)頁設計人員開發(fā)并維護的??通常這是開發(fā)大型項目的規(guī)范??這就確實是個問題了。從根本上講,將導致角色定義不清和職責分配不明,給項目管理帶來不必要的麻煩。圖1:JSP Model 1 體系結構。圖中文字:BROWSER:瀏覽器;Request:請求;Response:響應;Application Server:應用服務器;Enterprise Servers/Data Sources:企業(yè)服務器/數(shù)據(jù)源。我們還可以看看JSP體系結構的另一張圖例:MVC(Model-View-Controller ) 使用JSP和 SERVLET當 JSP 剛剛出來的時候,它基本上是ASP的翻版,但是,隨著JSP的開發(fā)者把一些新功能加入JSP,JSP變得比ASP更有擴展性了,因為它可以和 SERVLET 整合在一起。這樣,我們在用 SERVLET 控制應用程序的時候可以使用 JSP 做摸板。

Model 2體系結構,如圖2所示,是一種把JSP與servlets聯(lián)合使用來實現(xiàn)動態(tài)內(nèi)容服務的方法。它吸取了兩種技術各自的突出優(yōu)點,用JSP生成表達層的內(nèi)容,讓servlets完 成深層次的處理任務。在這里,servlets充當控制者的角色,負責管理對請求的處理,創(chuàng)建JSP頁需要使用的bean和對象,同時根據(jù)用戶的動作決定把那個JSP頁傳給請求者。特別要注意,在JSP頁內(nèi)沒有處理邏輯;它僅負責檢索原先由servlets創(chuàng)建的對象或beans,從servlet中提取動態(tài)內(nèi)容插入靜態(tài)模板。在我看來,這是一種有代表性的方法,它清晰地分離了表達和內(nèi)容,明確了角色的定義以及開發(fā)者與網(wǎng)頁設計者的分工。事實上,項目越復雜,使用Model 2體系結構的好處就越大。圖2:JSP Model 2體系結構  圖中文字:instantlate:瞬間延時;Controller、View、Model分別為MVC設計模式中的控制者、試圖、模型;其他同圖1。

JSP Model 2體系結構在 SUN 公司的 J2EE 設計藍圖里有非常詳細的說明,這里還有該體系結構的另一張圖例:如何選擇使用?1。很明顯,JSP體系結構1是以簡單頁面控制為中心的,而體系2是以整體規(guī)劃為中心的。換句話說,簡單的流程我建議使用JSP體系結構1,而包含大量事物處理的項目建議使用體系2。2。如果你的項目里互交成分多不多,如果不多的話,建議使用JSP體系結構1。3。兩個體系不是對立的,如果能夠滿足你的需求,你可以在你的項目里混合的使用兩種JSP體系結構。

【編輯推薦】

  1. 選擇JSP網(wǎng)站空間的三點注意事項
  2. 分析JSP后臺文件管理源代碼
  3. MySQL手冊中查到的JSP中文亂碼解決方法
  4. JSP中文亂碼問題的描述及解決方法
  5. 淺談如何調(diào)用JSP讀取數(shù)據(jù)庫中圖片并顯示在頁面上
責任編輯:彭凡 來源: CSDN
相關推薦

2009-07-09 13:52:41

Inside JVM

2017-02-06 21:08:34

Android虛擬機體系結構

2009-09-11 10:38:03

LINQ體系結構

2009-06-26 15:58:28

EJB

2009-07-15 13:46:26

Swing體系結構

2014-07-23 09:33:52

2012-02-06 17:22:44

MySQL

2010-04-08 10:17:37

Oracle體系結構

2010-08-16 12:54:21

ASON路由技術

2010-09-25 13:38:23

Inside JVM

2016-12-26 10:29:01

Spring框架結構

2010-06-21 14:51:14

ASON路由

2009-07-10 16:07:10

TikeSwing創(chuàng)建MVC體系結構

2009-09-08 14:34:42

Linq to SQL

2010-04-23 09:13:05

Oracle體系結構

2009-06-29 18:11:40

JSP設計模式

2019-07-26 06:42:28

PG架構數(shù)據(jù)庫

2010-05-26 18:20:59

SVN庫

2010-01-05 17:23:51

JSON建構

2010-09-16 15:22:30

JVM體系結構
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕一级毛片视频 | 午夜一级黄色片 | 精品日韩一区二区 | 99精品视频一区二区三区 | 国产成人麻豆免费观看 | 国产在线中文字幕 | 在线观看黄色电影 | 亚洲高清av | 美女视频一区二区 | 黄色在线免费观看 | 欧美一级黄视频 | 精品一区av| 久久丁香| 福利片一区二区 | 久久av一区二区三区 | 拍拍无遮挡人做人爱视频免费观看 | 国产aⅴ| 亚洲毛片在线观看 | 欧美国产日韩一区二区三区 | 一级一级毛片免费看 | 午夜午夜精品一区二区三区文 | 精品一二区 | 99视频在线免费观看 | 亚洲影音先锋 | 视频1区| 国产一区影院 | 国产激情一区二区三区 | 成人欧美一区二区三区在线观看 | 午夜欧美 | 国产一区久久久 | 亚洲成人播放器 | 欧美激情国产日韩精品一区18 | 日韩欧美三区 | 狠狠色狠狠色综合系列 | 91xx在线观看 | aaa综合国产 | 久久99精品久久久久久秒播九色 | 一区精品国产欧美在线 | www.欧美.com | 成人在线观看免费 | 午夜欧美a级理论片915影院 |