【问题标题】:precision and scale in @column@column 中的精度和比例
【发布时间】:2016-04-09 03:14:35
【问题描述】:

Here 我读到@column 中的长度仅用于生成的 DDL。精度和规模是否如此?

    @Column(precision = 15, scale = 5)
    private Integer myField;

如果是这样:如何定义 JPA 验证的精度和规模?

【问题讨论】:

    标签: hibernate jpa entity ddl


    【解决方案1】:

    JPA javadocs 和规范(this page 上的链接)清楚地表明这些值仅用于模式生成。它们也不是 Bean Validation 标准的一部分,因此与“验证”无关。

    【讨论】:

    • 请添加(准确)对规范/javadoc 的引用,可能对@Chris311 有帮助
    • 所以我只能在数据库上定义这个约束(使用 NUMBER(15,5))?
    • 对于整数字段,比例可能没什么用(取决于数据库)。有些数据库甚至不支持精度。
    【解决方案2】:

    我发现了如何做到这一点:

    @Column
    @Digits(integer = 15, fraction = 5)
    private Integer myField;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-17
      • 1970-01-01
      • 2021-04-05
      • 1970-01-01
      相关资源
      最近更新 更多