2012-05-21 15 views
0

나는 모든 속성 대신 특정 속성에 대해서만 bean을 검증하는 방법을 찾고있다. 예를 들어자바에서 사용자 정의 bean 유효성 확인

:

public Class TestA { 

@NotEmpty 
private String first; 

@NotEmpty 
@Size(min=3,max=80) 
private String second; 

//getters and setters 

} 

내가

public Class TestB { 

@NotEmpty 
private String other; 

@Valid 
private TestA testA; 

//public getters and setters 
} 

다음과 같이 클래스 '하여 TestA'에 referreing한다 '를 TestB'라는 또 다른 클래스를 검증하기 위해 사용자 정의 주석 유효성 검사기를 작성하는 것이 가능해야 특정 속성 만? 아래처럼 ...

public Class TestB { 

@NotEmpty 
private String other; 

@CustomValid(properties={"second"}) 
private TestA testA; 

//public getters and setters 
} 
+0

상속 사용 (인터페이스 및 수퍼 클래스) –

답변

1

groups 속성을 사용하십시오. 그것은 것이다 다음과 같습니다

public Class TestA { 

@NotEmpty(groups = {Second.class}) 
private String first; 

@NotEmpty(groups = {Second.class}) 
@Size(min=3,max=80, groups = {Second.class}) 
private String second; 

//getters and setters 

} 

Second 어딘가에 정의 된 빈 인터페이스입니다

public Class TestB { 

@NotEmpty 
private String other; 

@Valid 
private TestA testA; 

//public getters and setters 
} 

합니다. 자세한 내용은

이 문서에서 예제를 참조하십시오 2.3. Validating groups을 또한, 봄이> = 3.1 지정한 그룹의 검증을 활성화 할 수 있습니다 @Validates 주석에 흥미있을 수 있습니다 사용하는 경우.

관련 문제