Can you summarize the following document?
        
  JSP從2.0版本開始,增加了表示式語言(EL),以提供更快更簡單的建立新標籤的方法,並允許開發者建立Velocity式模板。如舊版本程式碼“codice_1”可簡化為“codice_2。

  

  JSP指令控制JSP編譯器如何去生成servlet,以下是可用的指令:  注意:在同一個JSP檔案中只有“import”匯入頁面指令可以被多次使用。

  

  以下是永遠可用的指令碼變數:

  有三個基本的指令碼元素,作用是使JAVA程式碼可以直接插入servlet.

  JSP動作是一系列可以呼叫內建於網路伺服器中的功能的XML標籤。JSP提供了以下動作:

  

  在本例中,請求被傳遞到"subpage.jsp",而且請求的處理權不會再返回前者。

  上述plugin例子說明了一種在網頁中嵌入applet的統一方法。在<"OBJECT">標籤出現之前,並沒有一種嵌入applets的通用方法。這個標籤設計得並不好,但有希望在以後加入動態屬性(height="${param.height}", code="${chart}"等)和動態引數的新功能。目前jsp:plugin標籤不允許動態呼叫applets。例如,你如果有一個圖表applet需要資料點以引數形式被傳入,除非資料點的數量是一個常量,否則你就不能使用ResultSet迴圈來建立jsp:param標籤,你不得不手寫每個jsp:param標籤的程式碼。而每個上述jsp:param標籤可以有一個動態命名和動態值。

  scope屬性可以是request, page, session or application,它有以下用意:  上述例子將會用一個建立一個類的例項,並且把該例項儲存在屬性中,該屬性將在該請求的生命週期內有效。它可以在所有被包含或者從主頁面(最先接收請求的頁面)轉向到的JSP頁之間共享。

  除了JSP預定義動作之外,開發者還可以使用JSP標籤擴充套件API新增他們自定義的"動作"。開發者寫一種實現一個標籤的介面和一個標籤庫的XML描述檔案的JAVA類,這就能指定標籤和實現標籤的JAVA類 請看如下JSP:  JSP編譯器將會載入mytaglib.tld這個XML檔案,然後可以看到標籤"myaction"由JAVA類"MyActionTag"實現。當該標籤首次在檔案中使用時,將會建立一個MyActionTag的例項。然後(而且當每次該標籤被使用時),當出現開始標籤時,將會呼叫doStartTag()方法,根據開始標籤的結果,來決定如何處理標籤的主體。主體是指開始標籤和結束標籤之間的文字。這個doStartTag()方法將會返回如下之一:  當結束標籤出現時,它會呼叫doEndTag()方法,該方法會返回如下兩做之一:  上述myaction標籤tag會有一個類似下面例子的用於實現的類:

  JSP的本地化是通過和JAVA應用程式相同的方式完成的,即使用資源包。

  為了把表現層(presentation)從請求處理(request processing)和資料儲存(data storage)中分離開來(這樣更利於開發、查錯和功能擴充套件),昇陽公司推薦在JSP檔案中使用一種稱作模型-檢視-控制器(MVC)的架構模式。按照此設計,當使用者訪問網站上的特定網址時,使用者的處理請求會先由網站伺服器獲取到,然後先交由網站的控制器程式作初步處理。使用者的訪問請求可能多種多樣,比如查詢資訊或進行資料計算都是常見的網站業務。控制器程式會初步判斷使用者請求的種類,然後把使用者請求轉發給與特定業務對應的Servlet程式或者另一個獨立的JSP檔案進行業務處理。當請求處理完後,再通過一個專門負責輸出資訊的JSP頁以清晰、美觀的方式向使用者的瀏覽器輸出結果。簡而言之,先由控制器攔截使用者請求並做初步判斷,再由業務處理程式訪問資料(從資料庫中訪問)和處理業務,最後由檢視元件生成結果頁面併傳送結果給使用者。其中JSP一般用作展示輸出結果,可以用於展示經Servlet查詢或處理後的結果;也可以用一個JSP檔案處理業務邏輯,再用另一個JSP檔案展示結果。按功能做這樣的檔案拆分(而非由一個臃腫的JSP頁面包攬所有功能)是為了便於團隊分工。MVC本身是一種由來已久的設計思想,基於JSP的技術只是實現MVC架構的流行方案之一。Struts和Spring框架等好幾種流行的網站建設框架都是基於MVC模式設計的。

  從架構上說,JSP可以被看作是從Servlets高階提煉而作為JAVA Servlet 2.1 API的擴充套件而應用。Servlets和JSP最早都是由Sun Microsystems(太陽公司)開發的。從JSP1.2版本以來,JSP處於Java Community Process(有人譯為:Java社群組織)開發模式下。JSR-53規定了JSP 1.2和Servlet 2.4的規範,JSR-152規定了JSP 2.0的規範。2006年5月,JSP 2.1的規範作為Java EE 5的一部分,在JSR-245中釋出。  靜態資料在輸入檔案中的內容和輸出給HTTP響應的內容完全一致。此時,該JSP輸入檔案會是一個沒有內嵌JAVA或動作的HTML頁面。而且,客戶端每次請求都會得到相同的響應內容。

  不管JSP編譯器是生成SERVLET的JAVA原始碼,或者是直接釋出二進位制碼,瞭解一下JSP編譯器是如何把檔案轉換成一個JAVA SERVLET,都是很有幫助的。例如,看一下如下輸入JSP和它最後生成的JAVA SERVLET:  Input JSP Resulting servlet
JSP(全稱JavaServer Pages)是由Sun Microsystems公司主導建立的一種動態網頁技術標準。JSP部署於網路伺服器上,可以響應客戶端傳送的請求,並根據請求內容動態地生成HTML、XML或其他格式文件的Web網頁,然後返回給請求者。JSP技術以Java語言作為指令碼語言,為使用者的HTTP請求提供服務,並能與伺服器上的其它Java程式共同處理複雜的業務需求。