jsp Scriptlets 執行個體教程

來源:互聯網
上載者:User

Scriptlets
我們已經看到如何嵌入的Java表達的JSP頁面把他們之間的<% = %>字元序列。
但很難做節目只是把裡面的Java運算式的HTML 。

JSP技術也可以讓你寫塊Java代碼內的JSP技術。您做到這一點,將您的Java代碼之間的“ %和% ”字元(就像表達,但沒有跡象=開始時的順序。 )

這個代碼塊被稱為“ scriptlet ” 。本身,一個scriptlet不會有助於任何HTML (儘管它可以,因為我們將看到樓下。 )在scriptlet包含Java代碼是每一次執行的JSP技術是援引。

以下是修改後的版本的JSP技術從上一節,增加了scriptlet 。

<HTML>
<BODY>
<%
    // This is a scriptlet.  Notice that the "date"
    // variable we declare here is available in the
    // embedded expression later on.
    System.out.println( "Evaluating date now" );
    java.util.Date date = new java.util.Date();
%>
Hello!  The time is now <%= date %>
</BODY>
</HTML>

如果您運行上面的例子中,您會發現輸出從“ System.out.println ”的伺服器日誌。這是一個方便的方法做簡單的調試(有些伺服器也有技術調試JSP技術在IDE中。查看您的伺服器的檔案,看它是否提供了這樣一種技術。 )
據本身就是一個scriptlet不會產生的HTML 。如果scriptlet要產生的HTML ,它可以使用一個變數所謂的“去” 。這個變數並不需要宣布。它已經預先為scriptlets ,加上其他一些變數。以下樣本顯示如何scriptlet可以產生HTML輸出。

<HTML>
<BODY>
<%
    // This scriptlet declares and initializes "date"
    System.out.println( "Evaluating date now" );
    java.util.Date date = new java.util.Date();
%>
Hello!  www.111cn.net

<%
    // This scriptlet generates HTML output
    out.println( String.valueOf( date ));
%>

在這裡,而不是使用的一種表現,我們正在創造的HTML直接列印的“去”變數。在“去”變數類型javax.servlet.jsp.JspWriter 。
另一個非常有用的預先定義的變數是“請求” 。這是類型javax.servlet.http.HttpServletRequest

“要求”在伺服器端處理是指交易之間的瀏覽器和伺服器。當有人點擊或輸入網址,瀏覽器發出了一個“請”到伺服器的該網址,並顯示返回的資料。作為這項工作的一部分“要求” ,各種資料,包括檔案瀏覽器想從伺服器,如果請求是來自緊迫的一個提交按鈕,資訊的使用者已進入的形式領域。

在JSP的“請求”的變數是用來擷取資訊的請求派出的瀏覽器。例如,你可以找到的名字用戶端的主機(如果有的話,否則的IP地址將被退還。 )讓我們修改代碼所示:

<HTML>
<BODY>
<%
    // This scriptlet declares and initializes "date"
    System.out.println( "Evaluating date now" );
    java.util.Date date = new java.util.Date();
%>
Hello!  The time is now www.111cn.net

<%
    out.println( date );
    out.println( "<BR>Your machine's address is " );
    out.println( request.getRemoteHost());
%>
</BODY>
</HTML>

類似的變數是“反應” 。這可以用來影響的反應被發送到瀏覽器。例如,您可以調用response.sendRedirect ( anotherUrl ) ;發送響應到瀏覽器,它應該載入不同的網址。這種反應實際上將一路走下去的瀏覽器。該瀏覽器便會發出不同的要求,以“ anotherUrl ” 。這是一個什麼不同於其他一些JSP的機制,我們會碰到,因為包括另一網頁或轉寄的瀏覽器到另一個網頁。
練習:寫JSP技術到輸出的整個路線, “您好!現在是時候... ”但使用scriptlet全面字串,其中包括HTML標記
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.