2017-02-04 12 views
2

나는 다음과 같은 방법이 있습니다에서봄 검증 - NULL 또는 유효한 URL 내 봄 부팅 응용 프로그램에서

if (!org.apache.commons.lang3.StringUtils.isEmpty(url) && !urlValidator.isValid(url)) { 
    throw new IllegalArgumentException("Decision url is not valid"); 
} 

: 직접 코드에서 나는 다음과 같은 조건을 확인하고있어 지금

Decision create(@NotBlank String name, String url, @NotNull User author); 

을 다른 단어 - url 매개 변수는 null 또는 유효한 URL 일 수 있습니다.

이 코드를 기존 유효성 검사 주석 (예 : JSR-303)으로 대체 할 수 있습니까?

+1

['org.hibernate.validator.constraints.URL'] (https://docs.jboss.org/hibernate/validator/5.2/api/org/hibernate/validator/constraints/URL.html) 주석을 사용하십시오. . 이식성이 그다지 큰 거래는 아니다. –

답변

1

Bean Validation 스펙에는 url에 대한 제약 조건이 포함되어 있지 않지만 구현 자의 일부는 Hibernate Validator의 @URL과 같은 확장으로 제약 조건을 추가하지만 정규 표현식을 기반으로 사용자 정의 유효성 검사기를 만들지 않도록하려면 확장 성 손상 사용법을 기억하십시오 . 다른 부분에서는 @NotNull, @NotBlank, NotEmpty 제약 사이에 혼란을 겪는 것처럼 보이도록 URL 문자열 빈 컨트롤에 @NotBlank를 사용할 수 있습니다. 당신이 정보를 선택하거나 중복 될 것이다 URL 문자열에 대한 자신의 검증 빈 컨트롤을 만들 경우 https://stackoverflow.com/a/17137308/5964741

그러나 아무리 :

는이 대답을 살펴보십시오.