<jsp:useBean>标签和<jsp:setProperty>标签 笔记

<jsp:useBean>标签用来在JSP页面中创建一个Bean实例。并指定它的名字及作用范围。它保证对象在标签指定的范围内可以使用。

语法如下:

<jsp:useBean id="id"scope="page|request|session|application" typeSpec/>

id为大小敏感的名字,用来表示这个实例;

scope表示此对象可以使用的范围;

typeSpec可以为以下四者之一:

·   class="className" Bean的类路径和类名。这个class不能是抽象的,必须有一个共用的,没有参数的构造器。

·   class="className" type="typeName"实例化一个Bean,同时还可以指定Bean的类型。

·   beanName="beanName" type="typeName"

·   type="typeName"

例:

Bean,定义Bean,定义了userName,password,age三个变量及三个变量的get/set方法。

package com.jspdev.ch3;

public class TestBean{

   public String userName;

   public String password;

   public int age;

   

   public void setUserName(String name){

      this.userName=name;

   }

   public void setPassword(String password){

      this.password=password;

   }

   public String getUserName(){

      return this.userName;

   }

   public String getPassword(){

      return password;

   }

   public int getAge(){

      return this.age;

   }

   public void setAge(int age){

      this.age=age;

   }

}

表单,定义了表单中的参数,注意参数名和Bean中定义的变量需要一致(包括大小写)。

<html>

<body>

用户信息注册:<br><hr>

<form method="get"action="register.jsp">

<table>

<tr><td>姓名:<inputname="userName"type="text"></td></tr>

<tr><td>密码:<inputname="password"type="password"></td></tr>

<tr><td>年龄:<inputname="age"type="text"></td></tr>

<tr><td><inputtype=submitvalue="submit"></td></tr>

</table>

</form>

</body>

</html>

 

JSP,<jsp:useBean>标签指了在本页面中使用JavaBean,此JavaBean的类为com.jspdev.ch3.TestBean,ID为"user"。

使用方法<jsp:setProperty>将request中的参数与JavaBean中的参数对应起来。name为之前用jsp:useBean引入的名称即,"user"。

使用user.getUserName()方法来获得用户名信息,这的"user"实际上指向一个JavaBean对象。也可以使用

<jsp:getPropertyname="user" property="userName"/>来获得JavaBean的属性。

<%@ pagecontentType="text/html;charset=gb2312"%>

<jsp:useBean id="user"scope="page"class="com.jspdev.ch3.TestBean"/>

<jsp:setPropertyname="user" property="*"/>

<html>

<body>

注册成功:<br>

<hr>

使用bean属性方法:<br>

用户名:<%=user.getUserName()%><br>

密码:<%=user.getPassword()%><br>

年龄:<%=user.getAge()%><br>

<hr>

使用getProperty:<br>

用户名:<jsp:getProperty name="user"property="userName"/><br>

密码:<jsp:getProperty name="user"property="password"/><br>

年龄:<jsp:getProperty name="user"property="age"/><br>

</body>

</html>


<jsp:setProperty>标签,用来和useBean一起协作,用来设置Bean的简单属性和索引属性。

语法如下:

<jsp:setPropertyname="beanName" propertyDetails />

name="beanName"为必选属性其值为Bean的名字在这之前用jsp:userBean引入的名称。

proertyDetails可以有四种不同的方法。

·   property="*"设置Bean快捷方式Bean属性的名字、类型必须和request对象中的参数名称相匹配。

·   property="propertyName"param="parameterName" Bean中的变量和request中的参数对应起来。propertyBean的属性名,paramrequest中的参数名。

·   property="propertyName"      

·   property="propertyName" value="propertyValue"  直接设置Bean的值。

 

举例说明,当使用property="*"时,可以如下操作:

<html>

<body>

用户信息注册:<br><hr>

<form method="get"action="register.jsp">

<table>

<tr><td>姓名:<inputname="userName"type="text"></td></tr>

<tr><td>密码:<inputname="password"type="password"></td></tr>

<tr><td>年龄:<inputname="age"type="text"></td></tr>

<tr><td><inputtype=submitvalue="submit"></td></tr>

</table>

</form>

</body>

</html>


对以上HTML语言Bean已经写好前提下可以使用如下的代码

<jsp:useBean id="user"scope="page"class="com.jspdev.ch3.TestBean"/>

<jsp:setPropertyname="user" property="*"/>

<html>

<body>

注册成功:<br>

<hr>

使用bean属性方法:<br>

用户名:<%=user.getUserName()%><br>

密码:<%=user.getPassword()%><br>

年龄:<%=user.getAge()%><br>

<hr>

使用getProperty:<br>

用户名:<jsp:getProperty name="user"property="userName"/><br>

密码:<jsp:getProperty name="user"property="password"/><br>

年龄:<jsp:getProperty name="user"property="age"/><br>


*<jsp:getProperty>标签,用来访问Bean的属性。<jsp:getPropertyname="user"property="userName"/>中,name="user",是使用<jsp:useBean>所获取的Bean;property="userName",是Bean中的变量名,也可以理解为是HTML中的<inputname="password" type="password">


原文来自:http://blog.sina.com.cn/s/blog_66c2c28e01017113.html

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值