属性(attribute)

エンティティ・オブジェクトまたはビュー・オブジェクトの特性で、オブジェクト・クラスのJavaBeansプロパティとして実装される。属性は、データベース列に対応付けることも、データベース列に依存しないことも可能である。属性には、次の5つの種類がある。

属性の種類

定義される場所

データベース問合せから導出された値か

データベースに永続的に存在するか

永続

エンティティまたはビュー・オブジェクト・レベル

はい

はい(値は、作成したクラスよりも長く存在)

一時

エンティティまたはビュー・オブジェクト・レベル

いいえ

いいえ

エンティティ導出

ビュー・オブジェクト・レベル

いいえ

いいえ

SQL導出

ビュー・オブジェクト・レベル

はい

いいえ

動的

ビュー・オブジェクト・レベル、実行時

いいえ

いいえ

エンティティ・オブジェクトの属性には、次の種類がある。

逆方向生成を使用して初めてエンティティ・オブジェクトを作成するとき、表の各列に対応する永続エンティティ属性が作成される。その後で表を変更した場合は、属性を手動で変更する必要がある。

ビュー・オブジェクトの属性には、次の種類がある。

SQL導出属性の値は、SQL文の結果である。たとえば、YearsOfService属性は、データベースにおける従業員の入社日と現行の日付との差異である。また、一時属性を作成し、Javaファイルで値を設定するための計算を行うコードも記述できる。通常、SQL導出属性を使用する方が、Javaでデータ集約型計算を行うよりも効率的である。

Business Components for Javaでは、属性という語はXMLの定義ではなく、UMLの定義に基づくものである。UMLでは、属性は、クラスの名前付きプロパティで、そのクラスのインスタンスが保持する値の範囲を記述する。