JSP动作标签useBean--<jsp:useBean> 创建一个对象

来源:互联网 发布:全面战争战锤 linux 编辑:程序博客网 时间:2024/04/30 12:58

这个标签是笔者认为最重要的标签。

首先介绍 Java Bean 的特点:

可以实现代码服用,易编写,易维护,易使用,可以在任何有 JVM 的机器上使用而不许重新编译。

1. 编写 JavaBean 的规则:

(1) 如果类的成员变量的名字是 xxx ,那么为了更改或获取成员变量的值在类中可以定义两个方法:

getXxx() 来获取属性和 setXxx ()来设置属性,要注意大小写。

(2) 对于 boolean 类型的成员变量,允许使用 is 来代替 get 和 set 。

(3) 类中的方法属性必须是 Public 的。

(4) 类中如果有构造方法,那么这个构造方法也是 public 的,并且是无参数的。

例:一个简单 bean

Circle.java:

package bean;public class Circle {    int radius;    public Circle(){        radius = 1;    }    public int getRadius(){        return radius;    }    public void setRadius(int newRadius){        radius = newRadius;    }    public double circleArea(){        return Math.PI * radius * radius;    }    public double circlLength(){        return 2.0 * Math.PI * radius;    }}

2. 使用 beans

使用 beans 时就要用到 useBean 标签了,其格式为:

<jsp:useBean id=-“ 给 bean 起的名字 ”class=” 创建 beans 的类 ”scope=”bean 有效范围 ”></jsp:useBean>

其中 scope 的属性值需要注意一下:

1.Scope 取 page :则即当客户使用 bean 时为每个客户占用不同的空间,简单说 bean 是不共享的,用户不能互相干涉。当用户离开该访问页时无效。

2.Scope 取 session :即该 bean 是共享的,所有用户访问时将对同一个 bean 操作,会互相干涉。当客户关闭浏览器时无效。

3.Scope 取 request :只当用户访问时有效,且不是共享的。当客户请求时作出相信,相应完后无效。

4.Scope 取 application :共享 bean ,当服务器关闭时该 bean 无效。

最后,若要使用 bean 还必须导入其类,可用命令:

<@page import=”className”>

例: Circle 为一个类文件名

useBeans.jsp :

<%@ page contentType="text/html;charset=GB2312" %><%@ page import="Circle"%><HTML><BODY bgcolor=cyan><Font size=1>   <jsp:useBean id="girl" class="Circle" scope="page" >   </jsp:useBean>  <%-- 通过上述 JSP 标签,客户获得了一个作用域是 page ,名字是 girl 的 beans --%>   <% // 设置圆的半径:      girl.setRadius(100);   %><P> 圆的半径是:   <%=girl.getRadius()%><P> 圆的周长是:   <%=girl.circlLength()%><P> 圆的面积是:   <%=girl.circleArea()%></BODY></HTML>

3 获取和修改 beans 的属性

getProperty 和 setProperty 可完成该命令。

格式分别为:

<jsp:getProperty name=”bean 的名字 ” property=”beans 的属性 ” />jsp:setProperty name=”bean 的名字 ” property=”beans 的属性 ” />

一个综合的例子 :
student.jsp :

<%@ page contentType="text/html;charset=GB2312" %><%@ page import="Student"%><HTML><BODY bgcolor=cyan><Font size=1>   <jsp:useBean id="zhang" class="Student" scope="page" >   </jsp:useBean><jsp:setProperty  name= "zhang"  property="name" value=" 张小三 "  /><P> 名字是:<jsp:getProperty  name= "zhang"  property="name"  /><jsp:setProperty  name= "zhang"  property="number" value="1999001"  /><P> 学号是:<jsp:getProperty  name= "zhang"  property="number"  /><% double height=1.70;%><jsp:setProperty  name= "zhang"  property="height" value="<%=height+0.05%>"  /><P> 身高是:<jsp:getProperty  name= "zhang"  property="height"  />米<jsp:setProperty  name= "zhang"  property="weight" value="67.65"  /><P> 体重是:<jsp:getProperty  name= "zhang"  property="weight"  />公斤</FONT></BODY></HTML>
原创粉丝点击