Menu Close

65.2.2. 標準アノテーション

Bean バリデーションの制約

表65.1「Bean バリデーションの標準アノテーション」 は、フィールドおよびメソッドの戻り値およびパラメーターで制約を定義するために使用できる Bean Validation 仕様で定義された標準のアノテーションを示しています (標準のアノテーションはクラスレベルで適用できません)。

表65.1 Bean バリデーションの標準アノテーション

アノテーション適用対象説明

@AssertFalse

Booleanboolean

アノテーションが付けられた要素が false であることを確認します。

@AssertTrue

Booleanboolean

アノテーションが付けられた要素が true であることを確認します。

@DecimalMax(value=, inclusive=)

BigDecimalBigIntegerCharSequencebyteshortintlong、およびプリミティブ型ラッパー

inclusive=false の場合、アノテーションが付けられた値が指定された最大値を下回ることを確認します。そうでない場合は、値が指定の最大値以下であることを確認します。value パラメーターは、BigDecimal 文字列形式で最大値を指定します。

@DecimalMin(value=, inclusive=)

BigDecimalBigIntegerCharSequencebyteshortintlong、およびプリミティブ型ラッパー

inclusive=false の場合、アノテーションが付けられた値が指定された最小値を上回ることを確認します。そうでない場合は、値が指定の最小値以上であることを確認します。value パラメーターは BigDecimal 文字列形式で最小値を指定します。

@Digits(integer=, fraction=)

BigDecimalBigIntegerCharSequencebyteshortintlong、およびプリミティブ型ラッパー

アノテーションが付けられた値は、桁数がinteger までで、少数桁数が fraction までの数値であるかどうかをチェックします。

@Future

java.util.Datejava.util.Calendar

アノテーションが付けられた日付が将来の日付であるかどうかをチェックします。

@Max(value=)

BigDecimalBigIntegerCharSequencebyteshortintlong、およびプリミティブ型ラッパー

アノテーションが付けられた値が指定の最大値以下であるかを確認します。

@Min(value=)

BigDecimalBigIntegerCharSequencebyteshortintlong、およびプリミティブ型ラッパー

アノテーションが付けられた値が指定の最小値以上であるかを確認します。

@NotNull

任意の型

アノテーションが付けられた値が null でないことを確認します。

@Null

任意の型

アノテーションが付けられた値が null であることを確認します。

@Past

java.util.Datejava.util.Calendar

アノテーションが付けられた日付が過去の日付であるかどうかをチェックします。

@Pattern(regex=, flag=)

CharSequence

指定されたフラグの一致を考慮して、アノテーションが付けられた文字列が正規表現 regex に一致するかどうかをチェックします。

@Size(min=, max=)

CharSequenceCollectionMap、および配列

アノテーションが付けられたコレクション、マップ、または配列のサイズが min 以上で max 以下であるかどうかを確認します。

@Valid

プリミティブ以外の型

アノテーションが付けられたオブジェクトに再帰的にバリデーションを実行します。オブジェクトがコレクションまたは配列の場合、要素は再帰的に検証されます。オブジェクトがマップの場合、値要素が再帰的に検証されます。