Java Bean とは

Mohammad Irfan 2023年10月12日
  1. Java で Java Beans を作成する
  2. Java で Java Beans を実装/アクセスする方法
  3. Java での Java Beans のセッターとゲッター
  4. Java Bean の利点
Java Bean とは

このチュートリアルでは、Java の Bean とは何かを紹介し、トピックを理解するためのサンプルコードもいくつかリストします。

Java Bean は、多くのオブジェクトを 1つのオブジェクト(Bean)にカプセル化するクラスです。以下の特性があります。

  1. シリアル化可能なインターフェイスをインポートします
  2. プライベートフィールド
  3. コンストラクター
  4. getter / setter

クラスの直列化可能性は、java.io.Serializable インターフェースを実装するクラスによって有効になります。このインターフェイスを実装しないクラスでは、状態がシリアル化または逆シリアル化されません。

外部クラスがこれらのフィールドを簡単に変更できないように、フィールドはプライベートにする必要があります。これらのフィールドに直接アクセスする代わりに、通常、getter / setter メソッドが使用されます。

オブジェクトを作成するための引数コンストラクターが 0 個以上ある場合があります。

プライベートフィールドにアクセスして変更するための getter メソッドと setter メソッドがあります。

これは、Java における Java Bean の基本構造またはドラフトです。

// Implements Serializable interface
public class SimpleTesting implements Serializable {
  // private fields

  // no-args constructor

  // list of getters and setters
}

Java で Java Beans を作成する

ここでは、3つのプライベートフィールド、1つのデフォルトコンストラクター、1つのパラメーター化されたコンストラクター、およびデータを設定および取得するためのゲッターとセッターを備えた Java Bean クラス SimpleTesting を作成しました。以下の例を参照してください。

import java.io.Serializable;
public class SimpleTesting implements Serializable {
  private int id;
  private String name;
  private int salary;

  public SimpleTesting() {}

  public SimpleTesting(int id, String name, int salary) {
    this.id = id;
    this.name = name;
    this.salary = salary;
  }
  public int getId() {
    return id;
  }
  public void setId(int id) {
    this.id = id;
  }
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public int getSalary() {
    return salary;
  }
  public void setSalary(int salary) {
    this.salary = salary;
  }
}

Java で Java Beans を実装/アクセスする方法

Java Beans を実装するために、そのクラスのオブジェクトを作成できます。ここでは、コンストラクターに値を渡し、ゲッターを使用して値にアクセスします。以下の例を参照してください。

public class Main {
  public static void main(String[] args) {
    SimpleTesting st = new SimpleTesting(1, "Rohan", 100000);
    System.out.println("id = " + st.getId());
    System.out.println("name = " + st.getName());
    System.out.println("salary = " + st.getSalary());
  }
}

出力:

id = 1
name = Rohan
salary = 100000

Java での Java Beans のセッターとゲッター

ここでは、setter メソッドを使用して値を設定し、次に getter メソッドを使用して値を取得しています。これが Java Beans の強みです。以下の例を参照してください。

public class Main {
  public static void main(String[] args) {
    SimpleTesting st = new SimpleTesting();
    st.setId(1);
    st.setName("Rohan");
    st.setSalary(100000);
    System.out.println("id = " + st.getId());
    System.out.println("name = " + st.getName());
    System.out.println("salary = " + st.getSalary());
  }
}

出力:

id = 1
name = Rohan
salary = 100000

Java Bean の利点

Java Beans は、ランタイムの検出とアクセスのためのユニバーサルコントラクトとして Java EE 全体で使用されます。たとえば、Java Server Pages(JSP)は、ページ間またはサーブレットと JSP 間のデータ転送オブジェクトとして Java Beans を使用します。