Java注释验证

时间:2017-09-16 13:12:17

标签: java validation annotations

如何验证应该大于零的属性?而不是零。我使用内置注释@Min(0)但是如何忽略零?这种情况下是否还有其他内置注释?

@Min(0)
default public Double getAmd1() {
    return (Double) get("amd1");
}

1 个答案:

答案 0 :(得分:3)

查看@DecimalMin注释 它提供了一个符合您需求的布尔参数inclusive。 遗憾的是,由于舍入问题,Double不受支持,但BigDecimal是。然后,您可以使用getDouble()将值设为double。

所以你可以尝试这样的事情:

@DecimalMin(value = "0.0" ,inclusive = false)
private BigDecimal amd1;

public BigDecimal getAmd1() {
    Double d = (Double) get("amd1");
    return BigDecimal.valueOf(d);
}