大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

JSP教程
JSP高級教程

JSP聲明

在 JSP 頁面中可以聲明變量、方法和類,其聲明格式如下:

<%!聲明變量、方法和類的代碼%>

特別要注意,在“<%“與“!”之間不要有空格。聲明的語法與在 Java 語言中聲明變量和方法時的語法是一樣的。

聲明變量

在“<%!”和“%>”標記之間聲明變量,即在“<%!”和“%>”之間放置 Java 的變量聲明語句。變量的類型可以是 Java 語言允許的任何數(shù)據(jù)類型。我們將這些變量稱為 JSP 頁面的成員變量。

【例1】聲明變量:

<%!
    int x,y=100,z;
    String tom=null,jery="Love JSP";
    Date date;
%>

這里,“<%!”和“%>”之間聲明的變量在整個 JSP 頁面內(nèi)都有效,因為 JSP 引擎將 JSP 頁面轉譯成 Java 文件時,將這些變量作為類的成員變量,這些變量的內(nèi)存空間直到服務器關閉才被釋放。

當多個客戶請求一個 JSP 頁面時,JSP 引擎為每個客戶啟動一個線程,這些線程由 JSP 引擎服務器來管理。這些線程共享 JSP 頁面的成員變量,因此任何一個用戶對 JSP 頁面成員變量操作的結果,都會影響到其他用戶。

聲明方法

在“<%!”和“%>”標記之間聲明的方法,在整個 JSP 頁面有效,但是,方法內(nèi)定義的變量只在方法內(nèi)有效。

【例2】聲明方法:

<%@ page contentType="text/html; charset=utf-8" %>
<%!
    int num = 0;                    //聲明一個計數(shù)變量
    synchronized void add()
    {
        //該方法實現(xiàn)訪問次數(shù)的累加操作
        num++;
    }
%>
<% add(); %>           
<html>
    <body><center>您是第<%=num%>位訪問該頁面的游客!</center></body>
</html>

運行結果如圖 1 所示。

圖1 使用方法的聲明

示例中聲明了一個 num 變量和 add() 方法。add() 方法對 num 變量進行累加操作,synchronized 修飾符可以使多個同時訪問 add() 方法的線程排隊調(diào)用。

當?shù)谝粋€用戶訪問該頁面后,變量 num 被初始化,服務器執(zhí)行 小腳本程序,從而 add() 方法被調(diào)用,num 變?yōu)?1。當?shù)诙€用戶訪問時,變量 num 不再被重新初始化,而使用前一個用戶訪問后的 num 值,之后調(diào)用 add() 方法,num 值變?yōu)?2。

聲明類

可以在“<%!”和“%>”之間聲明一個類。該類在 JSP 頁面內(nèi)有效,即在 JSP 頁面的 Java 程序段部分可以使用該類創(chuàng)建對象。下例中,定義了一個 Circle 類,該類的對象負責求圓的面積。當客戶向服務器提交圓的半徑后,該對象計算圓的面積。

【例3】使用類的聲明:

<%@ page contentType="text/html; charset=utf-8"%>
<html>
    <head>
        <title></title>
    </head>
    <body>
        <p>
            <font size="4">請輸入圓的半徑:<br></font>
        </p>
        <form action="" method="get" name="form" id="form">
            <font size="4"><input type="text" name="cat" value="1"> <input type="submit" value="送出" name="submit"></font>
        </form><%!
        public class Circle
        {
            double r;
            Circle(double r)
        {
        this.r = r;
        }
        double 求面積()
        {
        return Math.PI*r*r;
        }
        }
        %><%
        String str = request.getParameter("cat");
        double r;
        if(str != null)
        {
            r = Double.parseDouble(str);
        }
        else
        {
            r = 1;
        }
        Circle circle = new Circle(r);
        %>
        <p>
            <font size="4">圓的面積是:<%=circle.求面積()%></font>
        </p>
    </body>
</html>

運行結果如圖 2 所示。

圖2 使用類聲明

全部教程
主站蜘蛛池模板: 在线观看国产情趣免费视频 | 久草在在线视频 | 日本不卡视频在线视频观看 | 国产视频精品视频 | 国产亚洲午夜精品 | 国产精品边做奶水狂喷小说 | 91精品国产欧美一区二区 | 99精彩免费观看 | 国产欧美日韩综合 | 亚洲欧美国产日产综合不卡 | 免费观看欧美精品成人毛片能看的 | 国产成人91一区二区三区 | 久re这里只有精品最新地址 | 成 人 黄 色 视频播放1 | 欧美日韩精品一区二区三区四区 | 欧美夜夜操| 中文字幕亚洲图片 | 天天舔天天插 | 亚洲看黄| 国产网站精品 | 亚洲精品久久 | 久久福利资源网站免费看 | 五月天婷亚洲 | 久久一本精品久久精品66 | 日日干日日摸 | 欧美日韩一区二区视频免费看 | 天天色综合三 | 亚洲欧美另类在线视频 | 国产成人做受免费视频 | 国产精品久久久久久一级毛片 | 国产成人cao在线 | 99久久精品国产免费 | 成人a毛片在线看免费全部播放 | 天天做天天爱天天爽天天综合 | 精品九九在线 | 亚洲一二三区在线观看 | 人成xxxwww免费视频 | 久久精品亚洲日本波多野结衣 | 午夜国产精品久久久久 | 亚洲小视频在线观看 | 久久这里只有精品1 |