Spring Roo + jpa + hibernate を使用しており、アプリケーションにクロス検証(同時に複数のフィールドの検証)を実装したいと考えています。
それを実装する方法がわかりません。誰でも私にアドバイスしたり、関連するドキュメントに誘導したりできますか?
Spring Roo + jpa + hibernate を使用しており、アプリケーションにクロス検証(同時に複数のフィールドの検証)を実装したいと考えています。
それを実装する方法がわかりません。誰でも私にアドバイスしたり、関連するドキュメントに誘導したりできますか?
Hibernate Validator を見てください。エンティティの検証 (注釈を使用) が可能です。
http://www.hibernate.org/subprojects/validator.html
つまり、hibernate バリデーター/JPA アノテーションをそれらの上に配置して、フィールド制約にアノテーションを付けます。(例: @Min(10)) を入力し、次のコードを使用して無効なフィールドを見つけます。
ValidatorFactory factory = Validation.byDefaultProvider().configure().traversableResolver(new CustomTraversableResolver() ).buildValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<BaseValidationObject>> constraintViolations = Validator.validate(myEntityToValidate);
エンティティ間の特定の関係を検証する必要がある場合は、そのニーズに合わせてカスタム バリデータを作成できます。