<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # Java 服務器頁面簡介 > 原文: [https://beginnersbook.com/2013/05/jsp-tutorial-introduction/](https://beginnersbook.com/2013/05/jsp-tutorial-introduction/) **JSP** 是一種服務器端技術,可以完成服務器上的所有處理。它用于創建動態 Web 應用,使用 java 作為編程語言。 基本上,只需將文件擴展名從`.html`更改為`.jsp`,任何 HTML 文件都可以轉換為 JSP 文件,它運行得很好。 JSP 與 HTML 的區別在于能夠在 HTML 中使用 Java 代碼。在 JSP 中,您可以使用 JSP 標簽在 Java 中嵌入 Java 代碼。例如運行下面的代碼,每次運行它時,它都會顯示當前時間。這就是使這段代碼充滿活力的原因。 ```html <HTML> <BODY> Hello BeginnersBook Readers! Current time is: <%= new java.util.Date() %> </BODY> </HTML> ``` ## 你的第一個 JSP 讓我們開始用**簡單 JSP** 學習 JSP。 ```html <%-- JSP comment --%> <HTML> <HEAD> <TITLE>MESSAGE</TITLE> </HEAD> <BODY> <%out.print("Hello, Sample JSP code");%> </BODY> </HTML> ``` 上面的 JSP 生成以下輸出:`"Hello, Sample JSP code"`。 **上述代碼的說明** 1)行`<%-- JSP comment --%>`表示名為 JSP 注釋的 JSP 元素,在向 JSP 頁面添加注釋時可以使用此標簽,我們將在后續帖子中詳細討論。 **注意:**JSP 注釋必須以標簽`<%--`開頭,以`--%>`結尾。 2)`Head`,`Title`和`Body`標簽是 HTML 標簽 - 它們是 HTML 標簽,經常用于靜態網頁。無論他們擁有什么內容,都會傳遞給客戶端(Web 瀏覽器)。 3)`<%out.print("Hello, Sample JSP code");%>`是一個 JSP 元素,稱為 Scriptlet。 Scriptlet 可以包含 Java 代碼。 scriptlet 的語法是:`<%Executable java code>`。由于 Scriptlets 中的代碼是 java 語句,因此它們必須以分號(`;`)結尾。`out.print("Hello, Sample JSP code");`是一個 java 語句,它打印`"Hello, Sample JSP code"`。 如上所述,JSP 用于創建動態網頁。動態網頁通常是靜態和動態內容的混合。 **靜態內容**可以使用基于文本的格式,如 HTML,XML 等,**動態內容**由 JSP 標簽使用 HTML 內部的 Java 代碼生成。 ## Servlet 與 JSP 與 JSP 一樣,Servlet 也用于生成動態網頁。這是他們之間的比較。 它們之間的主要區別在于 servlet 在 java 中添加了 HTML 代碼,而 JSP 在 HTML 中添加了 Java 代碼。還有一些其他值得注意的要點如下: **Servlets**: 1. Servlet 是一個支持 HTML 標簽的 Java 程序。 2. 通常用于開發企業應用的業務層(復雜計算代碼)。 3. Servlet 由 Java 開發人員創建和維護。 **JSP**: 1. JSP 程序也是支持 java 語句的 HTML 代碼。更準確地說,JSP 使用 JSP 標簽在 java 中嵌入 java。 2. 用于開發企業應用的表示層 3. 經常用于設計網站并由 Web 開發人員使用。 ## JSP 的優點 1. JSP 具有 Servlet 的所有優點,如:比 CGI 更好的性能內置會話功能,它還繼承了 Java 技術的特性,如多線程,異常處理,數據庫連接等。 2. JSP 支持將內容生成與內容呈現分離。這使它更靈活。 3. 使用 JSP,Web 設計人員現在可以輕松地顯示需要的信息。 4. Web 應用程序員可以專注于如何處理/構建信息。 ## JSP 應用的架構 在我們開始開發 Web 應用之前,我們應該對架構有一個基本的想法。根據請求處理發生的位置(Servlet 或者 JSP(Java 服務器頁面)),JSP 有兩種架構。它們是 - 模型架構 1 和 模型架構 2。 **1)模型架構 1**:在這個模型中,JSP 起著關鍵作用,它負責處理客戶端發出的請求。客戶端(Web 瀏覽器)發出請求,JSP 然后創建一個 bean 對象,然后完成請求并將響應傳遞給 JSP。 JSP 然后將響應發送回客戶端。與模型架構 2 不同,在此模型中,大多數處理都是由 JSP 本身完成的。 ![JSP Architecture Model 1](https://img.kancloud.cn/53/f0/53f0ab965eee0bffdc804b1ad8172237_400x250.jpg) **2)模型架構 2**:在這個模型中,Servlet 扮演著重要角色,它負責處理客戶端(Web 瀏覽器)請求。演示部分(GUI 部分)將由 JSP 處理,并在 bean 的幫助下完成,如下圖所示。 servlet 充當控制器并負責請求處理。如果 JSP 頁面需要,它會創建 bean 對象并調用相應的 JSP 頁面。 JSP 使用 bean 對象處理表示部分。在這個模型中,JSP 不進行任何處理,Servlet 根據客戶端的請求創建 bean 對象并調用 JSP 程序。 ![JSP Architecture Model 2](https://img.kancloud.cn/30/f1/30f1e8030fb3fc233fe9afd8eedf8ecf_400x250.jpg)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看