JSR 303 ConstraintViolationException 和详细消息

ale*_*oid 3 java validation spring jsr bean-validation

我已经Spring Boot 1.5.1通过JSR 303验证配置了我的应用程序。现在我得到ConstraintViolationException了错误的数据。

是否可以通过ConstraintViolationException?

Edw*_*rzo 5

好吧,您ConstraintViolationException有一组ConstraintViolation对象。他们每个人都有你想要的细节。

public static <T> String getValidationMessage(ConstraintViolation<T> violation) {
    String className = violation.getRootBeanClass().getSimpleName();
    String property = violation.getPropertyPath().toString();
    //Object invalidValue = violation.getInvalidValue();
    String message = violation.getMessage();
    return String.format("%s.%s %s", className, property, message);
}
Run Code Online (Sandbox Code Playgroud)

有了这个,我会收到一条消息,例如“OrderLine.quantity 必须大于 0”