苏玉召的博客

学一点,再学一点,进步一点

导航

JavaBean

 

JavaBean

一、javabean概述

Javabean是一个java

三个接口

usebean

getProperty

getPrperty

       接口示例

<jsp:useBean id="test" class="SimleBean" />

// 表示定义一个java bean的实例,实例的名称是test,类的名称是SimleBean

<jsp:setProperty name="test" property="message" value="Hello JSP"/>

// 表示设置实例test的属性message,其值是"Hello JSP"

<jsp:getProperty name="test" property="message" />

// 表示在页面中输出实例test的属性message的值。

二、javabean定义

1.       <jsp:useBean>

<jsp:useBean id="beanInstanceName"

scope="page | request | session | application"

class="package.class"

other elements

/>

javaBean是特殊类型的java类,它与普通java类相比主要区别是包含了两种特殊的方法:set…(设置属性的方法)get(取属性值的方法)。

<jsp:useBean>动作用来查找或实例化一个jsp页面使用的JavaBeans组件。在程序中可把逻辑控制、数据库操作放在javabeans组件中,然后在jsp文件中调用它,这样可增加程序的清晰度及程序的可重用性。

1id="beanInstanceName" 用来绑定Bean实例的变量。

2class|type="package.claaa" 表明该bean具体是对哪个类的实例化。

3scope="page | request | session | application" 表示该bean的有效范围。

Page:实例的有效范围是当前页面。

Request:实例的有效范围是一个单独客户请求的生命周期内。

Session:实例的有效范围是整个用户会话的生命周期内。

Application:实例的有效范围是应用的生命周期内。

2.       <jsp:setProperty>

<jsp:setProperty name="beanInstanceName"

property="*" | property ="propertyName"

value="具体的值"

/>

动作的含义是使用bean中相应的set()方法设置一个或多个属性的值,值的来源是通过value属性明确给出,或者利用request对象中相应的参数。

假设某个bean有一个string类型的可被JSP文件使用的属性myProperty,则它必须有一个public方法setMyProperty(string value)<jsp:setProperty>动作使用的就是该方法。

(1)       name="beanInstanceName" 这个属性是必须的,用来表明对哪个bean实例执行下面的动作,这个值和动作<jsp:useBean>中定义的id必须对应起来,包括大小写都必须一致。

(2)       property="*" | property ="propertyName" 这个属性是必须的,用来表示要设置哪个属性。如果property的值是"*",表示用户在可见的JSP页面中输入的全部值,存储在匹配的bean属性中。匹配的方法是:bean的属性名称必须与输入框的名字相同。

(3)       value="具体的值" 它用来指定bean的属性的值。

3.       <jsp:getProperty>

<jsp:getProperty name="beanInstanceName" property="propertyName"/>

这个动作提取指定bean属性的值,转换成字符串,然后输出。该动作实际是调用了beanget()方法。

按上文提到的某个bean有一个string类型的可被JSP文件使用的属性myProperty,它必须有一个返回类型为stringpublic方法getMyProperty()<jsp:getProperty>使用的就是这个方法。

1name="beanInstanceName" 这个属性是必须的,用来表明对哪个bean实例执行下面的动作,这个值和动作<jsp:useBean>中定义的id必须对应起来,包括大小写都必须一致。

2property="*" | property ="propertyName" 这个属性是必须的,用来表示要获取哪个属性。

 

三、jsp中调用javabean示例

生成java类设置变量的setget属性,为了在jspjavabean进行setget置值和取值用。

goodsbean.java //java类文件

package sale; //sale为包名不可缺少,在*.jsp文件中用到

public class goodsbean{  //goodsbean类中定义变量

String Product;

double Price;

public goodsbean (){

this.Product = "box";

this.Price = 5.0;

}

public void setProduct (String ProductName){ //变量的set属性

    this.Product = ProductName;

}

public String getProduct(){//变量的get属性

    return (this.Product);

}

public void setPrice (double priceValue){

    this.Price = priceValue;

}

public double getPrice(){

    return (this.Price);

}

}

编译完生成的.class文件,放到:Tomcat \webROOT\WEB-INF\ 目录下。

*.Jsp文件中调用javabean方法:

<%@ page contentType="text/html;charset=”utf-8”%>

<head>

<title>goodsbean</title>

</head>

<body>

<jsp:useBean id="goodsbean" scope="application" class="sale.goodsbean" />

<%

使用方法1

goodsbean.setProduct("clock");

goodsbean.setPrice(17);

%>

使用方法2

<jsp:setProperty name="goodsbean" property = "Product" />

<br>

<jsp:setProperty name="goodsbean" property = "Price" />

<%

使用方法1

产品:<%= goodsbean.getProduct()%><br>

税率:<%= goodsbean.getPrice()%>

%>

<br>

使用方法2

产品:<jsp:getProperty name="goodsbean" property = "Product" />

<br>

税率:<jsp:getProperty name="goodsbean" property = "Price" />

</body>

</html>

注意 设置bean的属性如下

<jsp:setProperty name="goodsbean" property = "Product"   value="asdf"/>

<jsp:setProperty name="goodsbean" property = "Price" value="adad" />

技巧一:

先生成java类定义变量的setget属性,文件*.java

Dreamweaver布局客户端的htm表单,文件*.htm

生成接收客户端htm表单并使用javabean显示内容的jsp文件,文件*.jsp

<jsp:useBean id="goodsbean" scope="application" class="sale.goodsbean" />class为具体全包名的类。

 

posted on 2009-08-06 11:47  苏玉召  阅读(348)  评论(0编辑  收藏  举报