JSP JavaBean的使用

 
JavaBean 是可以重复使用的一个组件,是遵守 JavaBean API 规范的 Java 类。

一般情况下,JavaBean 要满足以下要求:
  • JavaBean 是一个公共类,并提供无参公有的构造方法
  • 需要被序列化并且实现了 Serializable 接口
  • 属性私有化
  • 具有公共的访问属性的 getter 和 setter 方法

Java 之父 James Gosling 在设计 Java 语言,为 Java 组件中封装数据的 Java 类进行命名时,看到了桌子上的咖啡豆,于是灵机一动,就把它命名为“JavaBean”,bean 翻译为“豆、豆子”。

在程序中,开发人员所要处理的无非是业务逻辑和数据,而这两种操作都可以封装成 JavaBean,一个应用程序中会使用很多的 JavaBean。由此可见,JavaBean 组件是应用程序的重要组成部分。

JavaBean示例

下面是一个 JavaBean 的简单示例,如下:
package entity;

import java.io.Serializable;

public class User implements Serializable {
   
    private static final long serialVersionUID = 1L;
   
    private int id;
    private String name;

    public User() {
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getId() {
        return id;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }
}

JavaBean属性

一个 JavaBean 可以有多个属性,属性应该是可以访问的,属性类型可以是任何合法的 Java 数据类型,包括自定义的类。

JavaBean 的每个属性通常都具有相应的 setter 和 getter 方法,setter 方法称为属性修改器,getter 方法称为属性访问器,如下:

1)getPropertyName( )

属性访问器以小写的 get 作为前缀,后跟属性名,且属性名的第一个字母也要改为大写。例如:属性名称为 name,则方法名称为 getName( ),用来读取该属性值。

2)setPropertyName( )

属性修改器以小写的 set 作为前缀,后跟属性名,且属性名的第一个字母也要改为大写。例如:属性名称为 name,则方法名称为 setName( ),用来设置该属性值。

JavaBean 的某个属性也可以只有 set 方法或 get 方法,这样的属性称之为只写或只读属性。

通过 getter 和 setter 方法访问 JavaBean,如下:
public static void main(String[] args) {
    User u = new User();// 创建对象
    u.setName("编程帮");// 设置对象的值
    System.out.println(u.getName());// 输出“编程帮”
}