Hibernate Validatorによるアノテーション

7.5 Hibernate Validatorによるアノテーション

Spring Bootで利用するもう1つのバリデーション機能は、org.hibernate.validatorパッケージです。これは「Hibernate Validator」と呼ばれるライブラリで、Hibernate(O/Rマッピングのフレームワーク)というフレームワークに含まれるバリデーション機能です。
Hibernate Validatorには、前述のjavax.validationには含まれていないアノテーションが追加されています。これらもSpring Bootで利用することができます。ではHibernate Validatorで追加されているアノテーションについても整理しておきましょう。

7.5.1 @NotEmpty

サンプルで使いましたね。Stringの項目で、値がnullまたは空白だった場合エラーにします。未入力を防ぐようなときに用いられます。引数はありません。

7.5.2 @Length

String値に利用されます。文字列の長さ(文字数)の範囲を指定します。引数に「min」「max」の2つがあり、それぞれ最小文字数、最大文字数を指定することが出来ます。

7.5.3 @Range

数値項目で用います。最小値、最大値を指定し、一定範囲内の値のみを入力できるようにします。基本的には、@Minと@Maxを併用するのと同じですが、こちらは1つのアノテーションにまとめています。引数に「min」「max」があり、それぞれ最小値、最大値を指定できます。

7.5.4 @Email

String値の項目で用います。入力された値が電子メールアドレスかどうかをチェックします。引数はありません。

7.5.5 @CreditCardNumber

数値の値およびString値で数値が入力される項目で用います。入力された値が正しいクレジットカード番号の形式かどうかをチェックします。引数はありません。
なお、これはあくまで値の形式をチェックするのであり、その番号が実際に利用可能かをチェックするわけではありません。

7.5.6 @EAN

String値の項目で用いられます。これはEAN(European Article Number)またはUCP(Uniform Product Code Council)のコード番号をチェックします。これらはバーコードの識別番号の規格で、特にEANは日本のバーコードで広く使われています(正確には日本で使われているものはJANと呼ばれます)。引数はありません。


NEXT>> 7.6 本章のまとめ