About

ドキュメント

プロジェクト文書

Built by Maven

アノテーション一覧

DAOインタフェースやDTOに指定可能なアノテーションの一覧です.

@Distinctアノテーション

生成されるJPQLのSELECT句にDISTINCTを指定します. 1対多・多対多の関連をFETCH JOINする場合に,結果リストから重複を取り除くことができます.

対象
  • Daoメソッド (Named Query・SQL Queryを除く)
指定方法
@Distinct

@FetchJoinアノテーション

生成するJPQLのFROM句でFETCH JOINを指定します.

対象
  • Daoメソッド (Named Query・SQL Queryを除く)
指定方法
@FetchJoin(
    value = "relationshipName",
    joinSpec = JoinSpec.INNER_JOIN
)
value
FETCH JOINする関連名を指定します.
joinSpec
FETCH JOINする方法を指定します. JoinSpec.INNER_JOINまたはJoinSpec.LEFT_OUTER_JOINを 指定することができます. デフォルトはJoinSpec.INNER_JOINです.

@FetchJoinsアノテーション

生成するJPQLのFROM句にFETCH JOINを複数指定します.

対象
  • Daoメソッド (Named Query・SQL Queryを除く)
指定方法
@FetchJoins(
    {@FetchJoin(...), @FetchJoin(...)}
)
value
@FetchJoinアノテーションを任意の数指定することができます.

@FirstResultアノテーション

引数またはDTOのプロパティでページングを指定する際に, 最初の位置を指定する引数またはプロパティをfirstResult以外の 名前にする場合に指定します.

対象
  • Daoメソッドの引数
  • DTOのプロパティのgetterメソッド
指定方法
@FirstResult

@FlushModeアノテーション

問い合わせのフラッシュ・モードを指定します. FlushModeType.AUTOを指定した場合,または指定しなかった場合は, EntityManagerのフラッシュ・モードに従います. FulshModeType.COMMITを指定した場合は問い合わせの前に永続コンテキストを同期化するための フラッシュは行われません.

対象
  • Daoメソッド
指定方法
@FulshMode(FulshModeType.COMMIT)
value
フラッシュ・モードを指定します. FlushModeType.AUTOまたはFlushModeType.COMMITを 指定することができます.

@Hintアノテーション

問い合わせのヒントを指定します.

対象
  • Daoメソッド (Named Query・SQL Queryを除く)
指定方法
@Hint(
	name = "hintName",
	value = "hintValue"
)
name
ヒントの名前を指定します.
value
ヒントの値をOGNL式で指定します. 文字列値を指定する場合はダブルクオートで囲む必要があります.

@Hintsアノテーション

問い合わせのヒントを複数指定します.

対象
  • Daoメソッド (Named Query・SQL Queryを除く)
指定方法
@Hints(
    {@Hint(...), @Hint(...)}
)
value
@Hintアノテーションを任意の数指定することができます.

@MaxResultsアノテーション

引数またはDTOのプロパティでページングを指定する際に, 最大件数を指定する引数またはプロパティをmaxResults以外の 名前にする場合に指定します.

対象
  • Daoメソッドの引数
  • DTOのプロパティのgetterメソッド
指定方法
@MaxResults

@NamedParameterアノテーション

Kuina-Daoが特別扱いする firstResultmaxResultsorderbyという名前の 引数またはDTOのプロパティをパラメータとして使用する場合に指定します.

対象
  • Daoメソッドの引数
  • DTOのプロパティのgetterメソッド
指定方法
@NamedParameter

@Orderbyアノテーション

このアノテーションは二種類の用途に使われます.

実行時に変わらない,静的なソート順を指定するためにDaoメソッドに指定します.

実行時に動的に変わる,動的なソート順を引数またはDTOのプロパティで指定する際に, ソート順を指定する引数またはプロパティをorderby以外の名前にする場合に指定します.

静的なソート順と動的なソート順は同時に指定することができます. その場合,生成されるJPQLのORDER BY句は静的なソート順で指定された項目の後に 動的なソート順で指定された項目が続きます.

対象
  • Daoメソッド (静的なソート順)
  • Daoメソッドの引数 (動的なソート順)
  • DTOのプロパティのgetterメソッド (動的なソート順)
指定方法
@Orderby("name, saraly DESC")
value
静的なソート順をJPQLのORDER BY句と同じ構文で指定します.

@PoisitionalParameterアノテーション

JPQLによる検索において,Named ParameterではなくPositional Parameterを使う場合に指定します.

対象
  • Daoメソッド(SQL Queryを除く)
指定方法
@PositionalParameter

@QueryNameアノテーション

JPQLによる検索において,Named Queryの名前を明示的に指定する場合に指定します.

対象
  • Daoメソッド(Named Queryのみ)
指定方法
@QueryName("queryName")
value
Named Queryの名前を指定します.

@TargetEntityアノテーション

検索対象のエンティティを明示的に指定します.

対象
  • Daoインタフェース
  • Daoメソッド
指定方法
@TargetEntity(Employee.class)
value
エンティティのクラスを指定します.

@TemporalSpecアノテーション

検索条件でjava.util.Dateまたはjava.util.Calendarを指定する場合に, 時制を指定します. @TemporalSpecアノテーションを指定しなかった場合はTemporalType.DATEが 使用されます.

対象
  • Daoメソッドの引数
  • DTOのプロパティのgetterメソッド
指定方法
@TemporalSpec(TemporalType.DATE)
value
時制を指定します. TemporalType.DATETemporalType.DATE・TemporalType.DATEの いずれかを指定することができます.