JSP动作元素之useBean、setProperty、getProperty指令

简介

这三个指令都是与JavaBean相关的指令,其中useBean指令用于在JSP页面中初始化一个Java实例;setProperty指令用于为JavaBean实例的属性设置值;getProperty指令用于输出JavaBean实例的属性。

如果多个JSP页面需要重复使用某段代码,我们可以把这段代码定义成Java类的方法,然后让多个JSP页面调用该方法即可,这样可以达到很好的代码复用。

语法格式

useBean

useBean语法格式如下:

<jsp:useBean id="name" class="classname" scope="page|request|session|application"></jsp:useBean>

其中id是JavaBean的实例名,class属性确定JavaBean的实现类。Scope属性用于指定JavaBean实例的作用范围:

  • page:仅在该页面有效。
  • request:在本次请求有效。
  • session:在本次session内有效。
  • application:在本次应用内一直有效。

setProperty

setProperty语法格式如下:

<jsp:setProperty property="ProtertyName" name="BeanName" value="value"/>

name属性是需要设定JavaBean的实例名;property属性确定需要设置的属性名;value属性则确定需要设置的属性值。

getProperty

getProperty语法格式如下:

<jsp:getProperty property="ProtertyName" name="BeanName" />

name属性确定需要输出的JavaBean的实例名,property属性确定需要输出的属性名。

实例

beanTest.jsp

<%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

    <title>Java Bean text</title>

</head>

<body>

<!-- 创建lee.Person 实例,该实例的名称是p1-->

<jsp:useBean id="p1" class="Person" scope="page">

</jsp:useBean>

 

<jsp:setProperty name="p1" property="name" value="waw"/>

<jsp:setProperty name="p1" property="age" value="29"/>

 

<jsp:getProperty name="p1" property="name" />

<jsp:getProperty name="p1" property="age" />

</body>

</html>

Person类源代码

public class Person {

    private String name;

    public Person(){

        

    }

    public Person(String name,int age){

        

    }

    public String getName() {

        return name;

    }

    public void setName(String name) {

        this.name = name;

    }

    public int getAge() {

        return age;

    }

    public void setAge(int age) {

        this.age = age;

    }

    private int age;

    

}

posted @ 2013-08-03 13:08  薛遗山  阅读(1057)  评论(0编辑  收藏  举报