Java-beanutils-overview

提供:Dev Guides
移動先:案内検索

Java BeanUtils-概要

説明

Java _BeanUtils_は、JavaAPIから派生し、Java言語のコンポーネントアーキテクチャを提供するApache Commonsのコンポーネントです。 Java BeanUtilsの設計パターンは、Beanクラスを取得および定義するためにJavaクラスのプロパティ値を取得および設定するのに役立つユーティリティクラスを使用します。

パッケージ_org.apache.commons.beanutils_には_introspection_というツールが含まれており、Javaクラスのプロパティ値の取得と設定の使用を促進し、開発ツールでそれらを視覚的に表示します。

JavaBeansの特性

以下は、開発構造に役立つJavaBeansの重要な特性です。

  • クラスは_public_である必要があり、引数なしでパブリックコンストラクターを提供します。 ツールとアプリケーションは、次に示すように、どのタイプのJavaクラス名が使用されるかを知らなくても、Beanの新しいインスタンスを動的に作成できます。
String className = ...;
Class beanClass = Class.forName(className);
Object beanInstance = beanClass.newInstance();
  • Beanの動作をインスタンス化とは別に構成できる引数を持たないコンストラクター。 これは、Beanのプロパティを使用して実現できます。また、Beanによって表示される動作またはデータの変更にも使用できます。
  • Beanプロパティには、プロパティ値にアクセスするために使用される_setter_および_getter_メソッドが含まれています。 これらのプロパティのデザインパターンは、プロパティ名に_set_または_get_プレフィックスを使用し、JavaBeans仕様を使用して大文字にした最初の文字を使用して指定できます。 たとえば、以下に示すように、プロパティ_first_name_および_last_name_に_setter_および_getter_メソッドを使用できます。
public class Employee {
   public Employee();  //Zero-arguments constructor
   public String getFirstName();
   public void setFirstName(String first_name);
   public String getLastName();
   public void setLastName(String last_name);
   public String getFullName();
}
  • プロパティ名に_getter_および_setter_メソッドがある場合、_getter_は_setter_データ型と一致する必要があります。 JavaBean仕様では、同じ名前で複数の_setter_を使用できますが、プロパティタイプは異なります。
  • 各プロパティに_getter_および_setter_メソッドを定義する必要はありません。 上記のコードでは、fullNameプロパティの_setter_メソッドはなく、読み取り専用プロパティです。
  • _getter_および_setter_メソッドを使用して、命名パターンに一致しないJavaBeanを作成できます。 JavaBeanは、Java言語とBeanUtilsパッケージのクラスをサポートして、Beanクラスとともに_BeanInfo_クラスのプロパティメソッド名を指定します。
  • JavaBeans仕様は、イベントリスナーのデザインパターンを提供し、JavaBeansをコンポーネント階層やBeanUtilsパッケージの他の便利な機能に結合します。

外部依存関係

_commons-beanutils_パッケージには、次の外部依存関係を使用できます。