[Validation.Group] in Spring

개발새발·2023년 1월 1일
0

spring

목록 보기
12/26

Spring의 세계는 무궁무진하고… 이번엔 validation을 group으로 묶을 수 있는 방법을 찾았다.

Group Validation이란?

검증 항목을 그룹화해서 필요한 곳에서 나눠 검증하는 것을 말한다.

사용법

package com.cafe24corp.cdncollectionapi.api.v1.validation;

public class ValidatorGroup {
    public interface GroupA {}
    public interface GroupB {}
}
@Data
@AllArgsConstructor
@NoArgsConstructor
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Dto {
    @NotEmpty(
            groups = { ValidatorGroup.GroupA.class, ValidatorGroup.GroupB.class },
            message = "Not empty")
    private List<String> names;

    @NotBlank(
            groups = {
                    ValidatorGroup.GroupA.class
                    , ValidatorGroup.GroupB.class
            },
            message = "The value must not be empty.")
    @Pattern(
            regexp = "^\\d$",
            groups = { ValidatorGroup.GroupA.class, ValidatorGroup.GroupB.class },
            message = "You must check value.")
    private String Tag;

    @Size(  min = 1,
            groups = { ValidatorGroup.GroupB.class },
            message = "You must input at least one.")
    private List<@Valid key> keys;
}
profile
발새발개

0개의 댓글