■バリデーション利用の準備
JPAでは、エンティティを作成してメソッドを呼び出すだけで、新たなエンティティをテーブルに保存したり、テーブルのレコードを更新したりできます。これは便利ですが、反面、危険でもあります。どのような値がテーブルに保存されるのか、それを確認することもなく保存してしまうのですから。
特にユーザーから入力されたデータを保存する場合は、入力された値が問題ないものかどうかをチェックした上で保存処理を行うべきでしょう。そのために用意されているのが「バリデーション」という機能です。
JPAでは、「Bean Validator」と呼ばれる機能を使ってバリデーション処理を行います。これは、JPAのライブラリには含まれていません。別途用意する必要があります。
では、サンプルプロジェクトのpom.xmlを開いて下さい。そして、<dependencies>タグ内に、下のリスト欄の内容を追記しましょう。
ここでは、2つのパッケージを追加しています。それぞれ以下のようなものです。
・Validation API
バリデーションの基本APIライブラリです。javax.validationパッケージがバリデーションの基本です。
・hibernate-validator
バリデーションの実装です。Bean Validatorも、JPAと同様に仕様であって、具体的な実装はサードパーティから出ています。ここでは、Hibernate.orgのライブラリを使用しています。
これらをpom.xmlに記述し、mvn packageして問題なくパッケージが生成されれば、ライブラリが正常に認識できています。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.0.3.Final</version>
</dependency>
記事のリストに戻る