2010年02月14日

Weld(CDI)好きのJavaEE6なGlassFish(JSF+CDI+JPA)なアノテーション一覧

よく使う?とわたしが独断で思うやつを勝手に一覧化(゜▽、゜
他にどんなのよく使うのかな〜?(・_・?)ハテ
あと、こっそりEmpressiaライブラリも入ってたりする(゚ー゚)ニヤニヤ
画像版↓
JavaEE6_Annotations_Part_20100214.PNG

製品仕様(依存)アノテーションパッケージ個人的分類期待効果
WeldCDI@Namedjavax.injectInject対象管理Inject管理対象としてマーク。
WeldCDI@Injectjavax.injectInject対象管理Inject先のフィールド、Injectするための特殊処理を挟むメソッドを指定する。
WeldCDI@Qualifierjavax.injectInject対象管理InjectとProducesを結びつけるマッピング。
WeldCDI@Producesjavax.enterprise.injectInject対象管理Inject元のィールド、Inject元を生成するメソッドを指定する。
WeldCDI@Disposesjavax.enterprise.injectInject対象管理破棄される時に呼ばれるのを指定。
WeldCDI@ApplicationScopedjavax.enterprise.contextInjectスコープ管理アプリケーション単位での生成と破棄。
WeldCDI@SessionScopedjavax.enterprise.contextInjectスコープ管理セッション単位での生成と破棄。
WeldCDI@RequestScopedjavax.enterprise.contextInjectスコープ管理リクエスト単位での生成と破棄。
WeldCDI@ConversationScopedjavax.enterprise.contextInjectスコープ管理業務単位での生成と破棄。
WeldCDI@Dependentjavax.enterprise.contextInjectスコープ管理Injectされる元に依存した生成と破棄。
WeldCDI@NormalScopedjavax.enterprise.contextInjectスコープ管理新しいスコープを定義するために使う。
EmpressiaWeld@ViewScopedjp.empressia.jsf.scope.viewInjectスコープ管理JSFの画面単位での生成と破棄。
Common AnnotationsCommon Annotations@PostConstructjavax.annotationInject生成管理Inject生成完了した時に行う処理。
Common AnnotationsCommon Annotations@PreDestroyjavax.annotationInject生成管理Inject破棄する前に行う処理。
EclipseLinkJPA@Entityjavax.persistence永続化管理EntityManagerの管理対象としてマーク。
EclipseLinkJPA@Idjavax.persistence永続化管理主キーを指定する。ID指定された対象のEntityが複合主キーを持っている場合は、ばらしたフィールドを別途用意して、@Idをつける必要がある。
Id関連は@Columnとかで名前を指定した方が良いかも。@JoinColumnとか必要になってくるし。
EclipseLinkJPA@OneToManyjavax.persistence関連数指定1対多の関係のあるフィールドに指定する。主にListのフィールドに指定する。相手側からの依存が基本の場合はmappedBy属性を指定する。
EclipseLinkJPA@ManyToOnejavax.persistence関連数指定多対1
EclipseLinkJPA@OneToOnejavax.persistence関連数指定1対1
EclipseLinkJPA@ManyToManyjavax.persistence関連数指定多対多
EclipseLinkJPA@MapKeyjavax.persistence関連指定主にMapなフィールドに指定する。※詳細は確認してない。
EclipseLinkJPA@Embeddablejavax.persistenceテーブルマッピングフィールドの形で同じテーブルに組み込むための定義側指定。
@PrePersist等は動かない。@MappedSuperclassと@Entityのみで動作する。
EclipseLinkJPA@Embeddedjavax.persistenceテーブルマッピングフィールドの形で同じテーブルに組み込むための指定。
EclipseLinkJPA@MappedSuperclassjavax.persistenceテーブルマッピングこれを定義したクラスをEntityで継承すると継承元も永続化対象になる。
@Embed〜系と違って、@PrePersistを定義しておくと動作する。
EclipseLinkJPA@PrePersistjavax.persistence永続化対象管理Insert前に行う処理を指定。
EclipseLinkJPA@PreUpdatejavax.persistence永続化対象管理Update前に行う処理を指定。
EclipseLinkJPA@Temporaljavax.persistence詳細指定日付系に指定する。
EclipseLinkJPA@OrderByjavax.persistence詳細指定順序指定。
EclipseLinkJPA@Transientjavax.persistence詳細指定永続化対象外マーク。
mojarraJSF@ManagedBeanjavax.faces.bean画面対象管理Weld使う時は使用しない。
mojarraJSF@ManagedPropertyjavax.faces.bean画面対象管理Weld使う時は使用しない。
mojarraJSF@ApplicationScopedjavax.faces.beanスコープ管理Weld使う時は使用しない。
mojarraJSF@SessionScopedjavax.faces.beanスコープ管理Weld使う時は使用しない。
mojarraJSF@RequestScopedjavax.faces.beanスコープ管理Weld使う時は使用しない。
mojarraJSF@ViewScopedjavax.faces.beanスコープ管理Weld使う時は使用しない。
mojarraJSF@CustomScopedjavax.faces.beanスコープ管理Weld使う時は使用しない。
mojarraJSF@NoneScopedjavax.faces.beanスコープ管理Weld使う時は使用しない。
mojarraJSF@FacesConverterjavax.faces.convert画面管理独自クラスをプルダウンとかチェックボックスとかに使う場合の定義に使用する。
mojarraJSF@FacesValidatorjavax.faces.validator画面管理独自の入力のチェックを定義する。フロントエンド用。
posted by すふぃあ at 13:10| Comment(0) | TrackBack(0) | プログラム
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/35308474

この記事へのトラックバック