また、フォームクラスの入力チェックルールの指定は以下のようになります。
バリデーショングループのフォームクラスでの定義例
public class AccountSearchForm implements Serializable {
interface FreeAccount extends Default {}
interface PayAccount extends Default {}
// ...
@Size(min = 1, max = 1)
private String type;
@NotNull(groups = PayAccount.class)
@Size(max = 0, groups = FreeAccount.class)
@Size(min = 14, max = 16, groups = PayAccount.class)
private String cardNo;
// ...
}
❶
グループインターフェイスを作成する。ここでは、無料アカウント向けと有料アカウント向けの2つのグループイ
ンターフェイスをしている。なお、グループインターフェイスには
BeanValidation が提供している
Default
イン
ターフェイスを継承している。これは、グループ指定のないチェックルール(この例であれば、
type
プロパティに
指定している
@Size
)をチ ...