我不是本地人。
我需要在jpa中使用默认值。我引用了this然后我使用了@ColumnDefault。 它工作得很好。但我想知道@ColumnDefault 值字段的作用。 @ColumnDefault 值的注释
The DEFAULT definition to apply to the DDL.
但我不知道DEFAULT定义是什么意思? 即使我使用@ColumnDefault("5000"),它也不会应用5000,只会应用DDL的默认值1000。
@ColumnDefault 的 value 字段的作用是什么?
谢谢。
最佳答案
DEFAULT
定义仅表示列的 SQL 默认值,可以通过以下 DDL 定义:
CREATE TABLE Person (
name VARCHAR(255) DEFAULT 'N/A'
)
值'N/A'是列名称的默认定义,相当于以下映射:
@Entity(name = "Person")
public class Person {
@Column("name")
@ColumnDefault("'N/A'")
private String name;
}
@ColumnDefault
仅当您使用 hibernate.hbm2ddl.auto
让 hibernate 自动创建/更新数据库架构时才有用。如果您不使用这种自动模式生成功能,则不会有任何效果。
关于java - jpa中@ColumnDefault的值字段是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70737219/