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>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值