任何 javax.validation Bean 注释,用于验证以下规则



我在 CRUD 的 java.ws.rs API 类中拥有下面的 bean:

class FooBean {
    BigDecimal ageLowerRange;
    BigDecimal ageUpperRange;
    BigDecimal heightLowerRange;
    BigDecimal heightUpperRange;
}

我找不到正确的javax.validation注释可以验证下/高字段是否在一个范围内,并且遵循以下逻辑:

public boolean compre(BigDecimal upperRange, BigDecimal lowerRange) {
    if (upperRange == lowerRange) return true; // handles both param being null
    if (upperRange == null) return false;
    if (lowerRange == null) return true;
    return upperRange.compareTo(lowerRange) > 0;
}

是否有一种 javax 验证可以执行我想要的操作,或者另一种方法来更优雅地验证我的 bean?

是的,使用注释。

休眠验证器:

@Range(min=, max=)

或从javax

@Min(value=)
@Max(value=)

在每个变量之上。

最新更新