jsr bigdecimal验证不能与@digits一起使用

w8rqjzmb  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(308)

嗨,我正在尝试验证一列的整数和精度部分。它根本不验证bigdecimal值。我的数据库是oracle。如果我正在将数据类型更改为string,它将被验证。

@Column(name = "L_MI_COVERAGE_PERCENT")
@Digits(integer=3, fraction=6, message = "MI Coverage Percent should be precision 9 and scale 6.")
private BigDecimal  miCoveragePercent;

我的数据库列是

L_MI_COVERAGE_PERCENT   NUMBER(9,6)

我正在传递一个类似100001.10的值。当我运行应用程序时,我得到的错误是

org.hibernate.exception.DataException: could not execute statement .

  ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
                Validator validator = factory.getValidator();
                Set<ConstraintViolation<Loans>> violations = 
  validator.validate(loans);

我没有收到任何冲突,但其他字段验证正在发生,消息返回到冲突对象,除了micoveragepercent。这是唯一一个有大小数的。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题