第13章 Bean Validation

13.1. Bean Validation

Bean Validation あるいは JavaBeans Validation は、Java オブジェクトのデータのバリデーションを行うモデルです。このモデルでは、組み込みのカスタムアノテーション制約を使い、アプリケーションデータの整合性を保ちます。また、メソッドおよびコンストラクターバリデーションも提供し、パラメーターおよび戻り値の制約を確保します。この仕様は「JSR 380: Bean Validation 2.0」で文書化されています。

Hibernate Validator は Bean Validation の JBoss EAP 実装です。また、JSR の参照実装です。

JBoss EAP は JSR 380 Bean Validation 2.0 仕様に完全準拠しています。また、Hibernate Validator によってこの仕様に追加機能が提供されます。

Bean Validation を初めて使用する場合は、JBoss EAP に同梱された bean-validation クイックスタートを参照してください。クイックスタートをダウンロードし、実行する方法は、JBoss EAP『スタートガイド』の「クイックスタートサンプルの使用」を参照してください。

JBoss EAP 7.2 には Hibernate Validator 6.0.x が含まれるようになりました。

Hibernate Validator 6.0.x の新機能
  • Bean Validation 2.0 はエンティティーおよびメソッドバリデーションのメタデータモデルおよび API を定義します。

    メタデータのデフォルトのソースはアノテーションで、XML を使用してメタデータをオーバーライドおよび拡張することができます。

    API は特定のアプリケーション階層やプログラミングモデルに関係しません。サーバー側のアプリケーションプログラミングとリッチクライアント Swing アプリケーションの開発の両方で利用できます。

  • 本リリースの Hibernate Validator は、バグ修正が含まれるだけでなく、最も一般的なユースケースに対してパフォーマンスが向上されています。
  • Bean Validation はバージョン 1.1 より、Bean Validation API を使用して任意 Java タイプのメソッドのパラメーターおよび戻り値に制約も適用できるようになりました。
  • Hibernate Validator 6.0.x および Bean Validation 2.0 には Java 8 以上が必要になります。

    詳細は「Hibernate Validator 6.0.9.Final released」および「Hibernate Validator 6.0.13.Final - JSR 380 Reference Implementation: Reference Guide」を参照してください。