目录

JSP - Java Bean( Java Beans)

JavaBean是一个特殊构造的Java类,用Java编写并根据JavaBeans API规范进行编码。

以下是区分JavaBean与其他Java类的独特特征 -

  • 它提供了一个默认的无参数构造函数。

  • 它应该是可序列化的,并且可以实现Serializable接口。

  • 它可能具有许多可以读取或写入的属性。

  • 它可能具有许多属性的“ getter ”和“ setter ”方法。

JavaBeans属性

JavaBean属性是可由对象的用户访问的命名属性。 该属性可以是任何Java数据类型,包括您定义的类。

JavaBean属性可以是read, write, read onlywrite only 。 通过JavaBean的实现类中的两个方法访问JavaBean属性 -

S.No. 方法和描述
1

获取PropertyName ()

例如,如果属性名称为firstName ,则您的方法名称将为getFirstName()以读取该属性。 此方法称为访问器。

2

设置PropertyName ()

例如,如果属性名称为firstName ,则您的方法名称将为setFirstName()以写入该属性。 这种方法叫做mutator。

只读属性只有getPropertyName()方法,而只写属性只有setPropertyName()方法。

JavaBeans示例

考虑一个属性很少的学生班 -

package com.iowiki;
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;
   }
}

访问JavaBeans

useBean操作声明了一个用于JSP的JavaBean。 声明之后,bean成为脚本变量,可以由JSP中使用的脚本元素和其他自定义标记访问。 useBean标记的完整语法如下 -

<jsp:useBean id = "bean's name" scope = "bean's scope" typeSpec/>

这里scope属性的值可以是application based您的要求的page, request, sessionapplication basedid属性的值可以是任何值,只要它是同一JSP中其他useBean declarations中的唯一名称即可。

以下示例显示了如何使用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 2010 

访问JavaBeans属性

《jsp:useBean...》操作一起,您可以使用《jsp:getProperty/》操作来访问get方法,使用《jsp:setProperty/》操作来访问set方法。 这是完整的语法 -

<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属性引用之前通过useBean操作引入JSP的JavaBean的id。 property属性是应该调用的getset方法的名称。

以下示例显示了如何使用上述语法访问数据 -

<html>
   <head>
      <title>get and set properties Example</title>
   </head>
   <body>
      <jsp:useBean id = "students" class = "com.iowiki.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>

让我们在CLASSPATH中使StudentsBean.class可用。 访问上面的JSP。 将显示以下结果 -

Student First Name: Zara 
Student Last Name: Ali 
Student Age: 10 
↑回到顶部↑
WIKI教程 @2018