威凡网全力打造:网页编程、软件开发编程、平面设计、服务器端开发、操作系统等在线学习平台!学编程,上威凡网!
JSP教程>> JSP基础教程 JSP高级教程 JSP常见问题
当前位置:首页 > JSP教程 > JSP高级教程
上一节
 JSP JavaBean

jsp javabean

javabean是特殊的java类,是用java语言写成的可重用组件,并且遵守javabeans api规范。

接下来给出的是javabean与其它java类相比而言独一无二的特征:

  • 提供一个默认的无参构造函数。
  • 需要被序列化并且实现了serializable接口。
  • 可能有一系列可读写属性。
  • 可能有一系列的"getter"或"setter"方法。

javabeans属性

一个javabean对象的属性应该是可访问的。这个属性可以是任意合法的java数据类型,包括自定义java类。

一个javabean对象的属性可以是可读写,或只读,或只写。javabean对象的属性通过javabean实现类中提供的两个方法来访问:

方法 描述
getpropertyname() 举例来说,如果属性的名称为myname,那么这个方法的名字就要写成getmyname()来读取这个属性。这个方法也称为访问器。
setpropertyname() 举例来说,如果属性的名称为myname,那么这个方法的名字就要写成setmyname()来写入这个属性。这个方法也称为写入器。

一个只读的属性只提供getpropertyname()方法,一个只写的属性只提供setpropertyname()方法。

javabeans程序示例

这是studentbean.java文件:

package com.tutorialspoint;

public class studentsbean implements java.io.serializable
{
   private string firstname = null;
   private string lastname = null;
   private int age = 0;

   public studentsbean() {
   }
   public string getfirstname(){
      return firstname;
   }
   public string getlastname(){
      return lastname;
   }
   public int getage(){
      return age;
   }
   public void setfirstname(string firstname){
      this.firstname = firstname;
   }
   public void setlastname(string lastname){
      this.lastname = lastname;
   }
   public void setage(integer age){
      this.age = age;
   }
}

编译studentbean.java文件,在本章最后的例子中将会使用到它。

访问javabeans

<jsp:usebean>标签可以在jsp中声明一个javabean,然后使用。声明后,javabean对象就成了脚本变量,可以通过脚本元素或其他自定义标签来访问。<jsp:usebean>标签的语法格式如下:

<jsp:usebean id="bean's name" scope="bean's scope" typespec/>

其中,根据具体情况,scope的值可以是page,request,session或application。id值可任意只要不和同一jsp文件中其它<jsp:usebean>中id值一样就行了。

接下来给出的是<jsp:usebean>标签的一个简单的用法:

<html>
<head>
<title>usebean example</title>
</head>
<body>

<jsp:usebean id="date" class="java.util.date" /> 
<p>the date/time is <%= date %>

</body>
</html>

它将会产生如下结果:

the date/time is thu sep 30 11:18:11 gst 2013

访问javabeans对象的属性

在<jsp:usebean>标签主体中使用<jsp:getproperty/>标签来调用getter方法,使用<jsp:setproperty/>标签来调用setter方法,语法格式如下:

<jsp:usebean id="id" class="bean's class" scope="bean's scope">
   <jsp:setproperty name="bean's id" property="property name"                       value="value"/>
   <jsp:getproperty name="bean's id" property="property name"/>
   ...........
</jsp:usebean>

name属性指的是bean的id属性。property属性指的是想要调用的getter或setter方法。

接下来给出使用以上语法进行属性访问的一个简单例子:

<html>
<head>
<title>get and set properties example</title>
</head>
<body>

<jsp:usebean id="students"                      class="com.tutorialspoint.studentsbean"> 
   <jsp:setproperty name="students" property="firstname"                     value="zara"/>
   <jsp:setproperty name="students" property="lastname"                      value="ali"/>
   <jsp:setproperty name="students" property="age"                      value="10"/>
</jsp:usebean>

<p>student first name: 
   <jsp:getproperty name="students" property="firstname"/>
</p>
<p>student last name: 
   <jsp:getproperty name="students" property="lastname"/>
</p>
<p>student age: 
   <jsp:getproperty name="students" property="age"/>
</p>

</body>
</html>

将studentbean.class加入classpath环境变量中,然后访问以上jsp,运行结果如下:

student first name: zara 

student last name: ali 

student age: 10 

申明:本教程内容由威凡网编辑整理并提供IT程序员分享学习,如文中有侵权行为,请与站长联系(QQ:254677821)!
上一节
相关教程  
其他教程  
JSP基础教程
JSP高级教程
JSP常见问题

违法和不良信息举报中心】邮箱:254677821@qq.com
Copyright©威凡网 版权所有 苏ICP备2023020142号
站长QQ:254677821