2013-08-22 36 views
8

Ví dụ: chúng tôi có một số thực thể trong quá trình bỏ qua một số trường đang xác thực bằng chú thích @Pattern. Thực thể này được sử dụng ở mọi nơi trong dự án, nhưng chỉ ở một nơi chúng ta cần phải "tắt" xác nhận này."Tắt" xác thực bean theo lập trình (javax.validation.constraints)

Có cách nào để thực hiện nó theo chương trình hay không?

Trả lời

12

Bạn có thể sử dụng các nhóm xác nhận cho điều này:

@Min(value = 18, message = "You have to be 18", groups = AdultsGroup.class) 
public int age; 

và sau đó:

constraintViolations = validator.validate(person, AdultsGroup.class); 

để kiểm tra độ tuổi tối thiểu, hoặc:

constraintViolations = validator.validate(person, null); 

vì đã không kiểm tra ràng buộc này.

Bạn có thể đọc thêm chi tiết tại đây: http://beanvalidation.org/1.1/spec/#constraintdeclarationvalidationprocess-groupsequence