可以使用javax.validation.constraints.DecimalMin和javax.validation.constraints.DecimalMax注解来限制参数的最小值和最大值,并使用java.math.BigDecimal.setScale()方法来保留小数点后两位。例如:

import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.DecimalMax;
import java.math.BigDecimal;

public class MyClass {
    @DecimalMin(value = "0.00", inclusive = true)
    @DecimalMax(value = "99999.99", inclusive = true)
    private BigDecimal myDecimalField;

    public void setMyDecimalField(BigDecimal myDecimalField) {
        this.myDecimalField = myDecimalField.setScale(2, BigDecimal.ROUND_HALF_UP);
    }
}

这里我们使用了@DecimalMin和@DecimalMax注解来限制参数的取值范围,同时在setMyDecimalField()方法中使用了setScale()方法来保留小数点后两位。ROUND_HALF_UP表示四舍五入保留两位小数。

对参数为Bigdecimal字段使用什么注解做到保留小数点后两位不用DecimalMin、DecimalMax、Digits

原文地址: https://www.cveoy.top/t/topic/bQB3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录