JSP聲明定義網頁範圍的變量、函數或類

JSP聲明定義網頁範圍的變量、函數或類


內容提要:JSP聲明定義網頁範圍的變量、函數或類,讓頁面的其餘部分能夠使用。 
聲明的變量和方法是該頁面所對應的Servlet類的成員變量和成員方法,聲明的類是Servlet類的內部類。 
聲明塊包含在<%!和%>中 。
包括變量聲明、方法聲明和聲明類三種。

JSP聲明定義網頁範圍的變量、函數或類,讓頁面的其餘部分能夠使用。
聲明的變量和方法是該頁面所對應的Servlet類的成員變量和成員方法,聲明的類是Servlet類的內部類。
聲明塊包含在<%!和%>中 。
包括變量聲明、方法聲明和聲明類三種。

一、變量聲明

用於定義特定於 JSP 頁面的變量,聲明的變量成了 JSP 頁面轉換到的 Servlet 類的成員變量,可以被該JSP頁面中其他任何部分使用。
其語法形式爲:<%! 變量聲明 %>
聲明的變量類型可以是Java語言中允許的任何數據類型。
變量聲明方式跟Java中變量聲明的形式一樣,也可以在聲明變量時對其進行初始化,記住要在變量聲明的後面加上分號。如:

<%! private int x=0, y=0;
private String units = "ft";
double st=Math.sqrt(16); %>

二、方法聲明
聲明的方法在JSP頁面有效,它編譯成Servlet 類的成員方法。可以由頁面上所有腳本元素訪問。
其語法形式爲:<%! 方法聲明 %>
方法聲明方式跟Java中方法定義的形式一樣,要給出方法返回類型、方法名、方法形參和方法體。
注意:雖然方法是客戶共享的,但方法中的變量並不是客戶共享的。如:

<%! public long fact (long x)
{
     if (x == 0 )
       return 1 ;
    else
       return x * fact (x-1) ;
   } 
%>

 

三、聲明類

聲明類是JSP頁面對應的Servlet類的內部類,頁面上所有腳本元素都可以創建該類的對象。
其語法形式爲:<%! 聲明類 %>
下面例子定義一個square類,當客戶訪問該頁面時,服務器創建該類的對象,只要客戶給出方的邊長,就可以求出方的周長和麪積。
例exa_1.jsp:(運行結果如圖2-13所示)

<%@ page contentType="text/html;charset=gb2312"%>
<html>
<body>
<p>請輸入正方形邊長
<br>
<form action="exa_1.jsp" method="get" name=form>
 <input type="text" name="cat" value="1">
 <input type="submit" name="submit" value="送出">
</form>
<%! public class square
 {
   double r;
   square(double r)
    {this.r=r;}
   double getarea()
    { return r*r;}
   double getlength()
    { return r*4;}
 }
%>
<% String s=request.getParameter("cat");
   double r;
   if(s!=null)
   {r=Double.valueOf(s).doubleValue();}
   else
   {r=1;}
   square cc=new square(r);   //創建對象
%>
<P>方的面積是:
<BR>
<%=cc.getarea()%>
<p>方的周長是
<%=cc.getlength()%>
</body>
</html>

發佈了11 篇原創文章 · 獲贊 10 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章