@Required
Playフレームワーク内で作成されたカスタムJSR-303アノテーションです。JSR-303は、JavaBeansの検証の仕様であり、特定のJavaBeansの値が一連の制約内にあることを確認できます。いくつかの標準的な検証アノテーションの例:
- @Max-注釈付き要素は、指定された最大値以下の値である必要がある数値である必要があります。
- @Min-注釈付き要素は、指定された最小値以上の値である必要がある数値である必要があります。
- @NotNull-注釈付き要素はnullであってはなりません。
各JSR-303アノテーションでは、グループを定義できます。各グループは実際には単なるクラスです。これらのグループを使用して、特定のBeanの検証のサブセットを実行できます。特定の例では、実装者はこれらのグループを表す2つのインターフェースを定義しています-All
とStep1
。次に、それらの検証がグループに属していることを示すために、検証アノテーションにグループを追加します。したがって、以下のクラスの場合:
public class MyBean {
@Required(groups = {All.class, Step1.class})
@MinLength(value = 4, groups = {All.class})
public String username;
}
MyBean bean = new MyBean();
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
以下は、フィールドの検証を実行@Required
します。@MinLength
username
validator.validate(bean, All.class);
一方、以下は(フィールド@Required
の)検証のみを実行します。username
validator.validate(bean, Step1.class);