1つ以上のデリゲート検証ルールに基づいて、コレクションの各要素を検証できますか?例:JSR303の共通オブジェクトのコレクションの検証
@EachElement({@Min(1), @Max(12)})
private Set<Integer> monthNumbers;
1つ以上のデリゲート検証ルールに基づいて、コレクションの各要素を検証できますか?例:JSR303の共通オブジェクトのコレクションの検証
@EachElement({@Min(1), @Max(12)})
private Set<Integer> monthNumbers;
この回答を見る:Hibernate Validation of Collections of Primitivesそれはあなたのために働く解決策を記述しますが、かなり複雑です。より簡単な解決策は、Integer
のラッパークラスを実装し、そのクラスに@Min
と@Max
と宣言することです。あなたは
@Valid
private Set<MyIntegerWrapper> monthNumbers;
クラスMyIntegerWrapper使用することができますより:
ここclass MyIntegerWrapper
{
@Min(1)
@Max(12)
Integer myInteger;
}
をあなたは@Valid
のためにいくつかのドキュメントを見つける:Object graphs
このライブラリは任意の制約を使用することは非常に簡単ですし、validator-collectionを見てみましょう単純な型のコレクションに対する注釈。