休眠中的@ Column,@ Length,@ Size注释-同时使用

时间:2019-06-05 09:03:13

标签: java spring hibernate annotations hibernate-annotations

我尝试了解休眠字段的哪个注释具有最高优先级。我在同一字段中使用@ Column,@ Length和@Size,并想知道将使用哪个值来设置数据库中的列长度。

    @Column(name = "var", length = 5)
    @Length(max = 167)
    @Size(max = 64)
    private String var;

使用上述代码,数据库中的列长度设置为167。

“休眠:创建表测试(id int4不为null,var varchar(167),主键(id))”

    @Column(name = "var", length = 5)
    @Length(max = 168)
    @Size(max = 64)
    private String var;

但是,如果我使用此代码,则列长度等于64。

“休眠:创建表测试(id int4不为null,var varchar(64),主键(id))”

您能帮我理解吗?您知道任何完全描述@ Column,@ Length和@Size注释含义的参考吗?

0 个答案:

没有答案