SpringMVC List型のバリデーション

今回は、DTOでListを検証する方法についてみていきたいと思います。

@Valid

List型の検証にはValidバリデーションをListに付与し、List<E>のEとして指定したクラウにバリデーションのアノテーションを付与します。

サンプル

@Getter
public class MemberUpdateRequestDto {
 @Valid
 private List<SkillDto> skills;
}
  • skillsフィールドに@validアノテーションを付与します。

@Getter
public class SkillDto {

    @NotBlank(message = "{E00002}")
    private String name;

    @Min(value = 1, message = "{E00003}")
    @Max(value = 100, message = "{E00003}")
    private int percent;
}
  • エレメンタルクラスにはバリデーションアノテーションを付与します。

確認してみましょう

  • 上記はControllerAdviceが付与されているハンドラクラスですが、みてみると正常なエラー内容が確認できます。

コメントを残す