Javaに関する様々な情報をご紹介します。

1はじめてのJavaBeans

Javaに関する様々な情報をご紹介します。

はじめてのJavaBeans

このページでは、JavaBeansの概要について解説します。

JavaBeansの概要

JavaBeansとは、ある機能を一つにまとめたクラスです。再利用可能なプログラムを可能にするために、Javaの仕様で規定されています。ある機能を一つにまとめているため、そのJavaBeansを様々なプログラムから利用することができます。

Webアプリケーションでは、JavaBeansは主にデータ操作に使用します。データ管理のプログラムをJavaBeansで定義し、Servlet・JSPからJavaBeansを通してデータ操作を行います。JavaBeansで管理されているデータのことをプロパティといいます。

WebアプリケーションでのJavaBeansの役割についてはJavaの道:基本事項(開発モデルMVC2)を参照してください。

JavaBeansの作成

JavaBeansを作成する上での一般的な考慮事項を説明します(すべてのJavaBeansに当てはまるわけではありません)。

  1. 慣例的にJavaBeansのクラス名の最後はBeanにします。
  2. 作成するJavaBeansはpublicクラスにします。また、そのクラスは引数無しのコンストラクタを持つ必要があります。
  3. 管理するデータ(プロパティ)はカプセル化のため、private変数で宣言します。
  4. JavaBeansで管理するデータ(プロパティ)をJSPから操作するメソッドを宣言する必要があります。このメソッドのことをアクセスメソッドと言います。アクセスメソッドはデータを登録するsetメソッドと、データを参照するgetメソッドの2つがあります。アクセスメソッドはメソッド名が決められており、setメソッドの場合は「set+プロパティ名」、getメソッドの場合は「get+プロパティ名」となります。
    プロパティ名の初めの文字は大文字にします。例えば、プロパティ名がnameの場合、setメソッドはsetName、getメソッドはgetNameになります。

JavaBeansの例

package Beans;

//(1)publicクラスを宣言しています。
//   コンストラクタはデフォルトコンストラクタを使用します。
public class ExBean {
    //(2)プロパティidをprivate変数で宣言しています。
    private String id;

    //(3)プロパティidのsetメソッドを宣言しています。
    public void setId(String id) { this.id = id; }

    //(4)プロパティidのgetメソッドを宣言しています。
    public String getId() { return this.id; }
}

JavaBeansの使用例

JavaBeansで管理されているデータ(プロパティ)をJSPから参照するプログラムを例示します。JavaBeansにデータを登録するプログラムについては、省略します。

【showId.jsp】JavaBeansのデータを参照するJSPプログラムです。

<%-- (1)JavaBeansをインポートします。 --%>
<%@ page import="Beans.*" %>
<%-- (2)<jsp:useBean>タグでJavaBeansのオブジェクトを生成します。 --%>
<jsp:useBean id="object1" class="Beans.ExBean" scope="session" />

<html>
<body>

あなたの名前は
<%-- (3)<jsp:getProperty>タグでプロパティidのデータを取得します。 --%>
<jsp:getProperty name="object1" property="id" />
です。

</body>
</html>

【ExBean.java】プロパティidのデータを管理するJavaBeansプログラムです。

package Beans;

public class ExBean {

    //(1)データを保存する変数idを宣言します。
    private String id;

    //(2)変数idにデータを保存するメソッドを宣言します。
    public void setId(String id) { this.id = id; }

    //(3)変数idのデータを返すメソッドを宣言します。JSPの
    //   <jsp:getProperty>タグを使用すると、このメソッド
    //   が呼び出されます。
    public String getId() { return this.id; }

}

【実行結果】JavaBeansのクラスはServletプログラムと同様に、\WEB-INF\classesディレクトリ配下に設置します。Servlet・JSPプログラムの実行方法に関しては、Javaの道:Tomcat(プログラム配置・実行)を参照してください。

Javaの道_JavaBeans_実行結果

1はじめてのJavaBeans