[java] Hibernate Validator를 사용하여 이진수 유효성 검사를 수행하는 방법은 무엇인가요?
  1. 의존성 추가 Hibernate Validator를 사용하기 위해 먼저 관련 의존성을 추가해야 합니다. Maven 프로젝트를 사용한다면 pom.xml 파일에 다음 의존성을 추가합니다.
<dependency>
    <groupId>org.hibernate.validator</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>6.1.5.Final</version>
</dependency>
  1. 이진수 유효성 검사 어노테이션 정의 이진수 유효성을 검사하기 위해 어노테이션을 정의해야 합니다. 아래와 같이 @Binary이라는 어노테이션을 만들어 줍니다.
@Target({ FIELD, METHOD, PARAMETER })
@Retention(RUNTIME)
@Constraint(validatedBy = BinaryValidator.class)
public @interface Binary {
    String message() default "Invalid binary number";
    Class<?>[] groups() default {};
    Class<? extends Payload>[] payload() default {};
}
  1. 유효성 검사 로직 작성 유효성 검사 로직은 Validator 클래스에서 처리됩니다. 이진수인지를 판별하는 로직을 작성합니다.
public class BinaryValidator implements ConstraintValidator<Binary, String> {
    @Override
    public boolean isValid(String value, ConstraintValidatorContext context) {
        if (value == null) {
            return true;
        }
        String regex = "^[01]+$";
        return value.matches(regex);
    }
}
  1. 유효성 검사 어노테이션 사용 이진수 유효성 검사 어노테이션을 필드 또는 메소드 파라미터에 적용하여 사용할 수 있습니다.
public class MyClass {
    @Binary
    private String binaryNumber;
    
    // getter, setter
}

위와 같이 어노테이션을 사용하면 binaryNumber 필드에 저장되는 값이 이진수인지 Hibernate Validator가 자동으로 검증해줍니다.

이제 Hibernate Validator를 사용하여 이진수 유효성 검사를 수행할 수 있습니다.