org.seasar.doma
注釈型 Entity


@Target(value=TYPE)
@Retention(value=RUNTIME)
public @interface Entity

テーブル、結果セット、もしくはパラメータの集合を示します。

このアノテーションは、トップレベルのインタフェースに指定できます。 注釈されたインタフェースは MappedSuperclass および Entity が注釈されたインタフェースのみを拡張できます。

インタフェースのメンバメソッドは、 Delegate で注釈されていない限り、次の制約を満たす必要があります。

例:
 @Entity
 public interface Employee {
 
     @Id
     @Column(name = "ID")
     IntegerDomain id();
 
     @Column(name = "EMPLOYEE_NAME")
     StringDomain employeeName();
 
     @Version
     @Column(name = "VERSION")
     IntegerDomain version();
 }
 

Delegate が注釈されていないメソッドの 戻り値の型がすべて SerializableDomain のサブタイプであれば、注釈されたインタフェースの実装は直列化可能です。

注釈されたインタフェースの実装はスレッドセーフであることを要求されません。

作成者:
taedium
関連項目:
MappedSuperclass, Table, Column, Delegate, Id, Transient, Version

任意要素の概要
 Class<? extends EntityListener<?>> listener
          リスナーです。
 long serialVersionUID
          注釈されたインタフェースの実装で使用されるserialVersionUIDです。
 

listener

public abstract Class<? extends EntityListener<?>> listener
リスナーです。

指定しない場合、デフォルトのリスナーが設定されます。 リスナーは、クラスごとに1つだけインスタンス化されます。

デフォルト:
org.seasar.doma.jdbc.entity.BuiltinEntityListener.class

serialVersionUID

public abstract long serialVersionUID
注釈されたインタフェースの実装で使用されるserialVersionUIDです。

デフォルト:
1L


Copyright © 2009 The Seasar Foundation. All Rights Reserved.