2012-01-25 3 views
3

주어진 문자열 목록에 대해 필드의 유효성을 검사하는 최대 절전 유효성 검사기가 있습니다. 더 명확하게 코드를 작성하겠습니다.여러 값을 허용하는 최대 절전 유효성 검사기에 값을 제공합니다.

@Target({ METHOD, FIELD, ANNOTATION_TYPE }) 
    @Retention(RUNTIME) 
    @Constraint(validatedBy = AllowedValuesValidator.class) 
    @Documented 
    public @interface AllowedValues { 
     ... 
     String[] value(); 
    } 

이전에 우리가 이제 우리는 값의 범위를 사용할 필요가

@AllowedValues("value1") 
    private String method; 

로 사용하고, 방법은 여러 값을 가질 수 있습니다.

@AllowedValues("Standard", "One-Day", "Two-Day", "Three-Day") 
    private String method;  

@AllowedValues("Standard, One-Day, Two-Day, Three-Day") 
    private String method; 

먼저 하나가 컴파일되지 않고 두 번째는 (분명) 허용 값으로 전체 문자열을 사용합니다 : 나는 모두를 시도했다.

여기에 여러 값을 지정하는 방법에 대한 아이디어가 있습니까? 그것은 String[]을 이래로

+0

내가 찾을 수없는'@ AllowedValues' 곳은에? – zhuguowei

답변

6

, 여러 값을 배열 이니셜 라이저 구문을 사용해야합니다

@AllowedValues({"Standard", "One-Day", "Two-Day", "Three-Day"}) 
+0

멋진 작품처럼 멋지다! 그 생각을 했어야 했어! – cheekoo

관련 문제