@Entity
class Foo {
@Column
private String productName;
@column
private Date orderedDate;
@Column
private int numHits;
}
我想指定默认值productName =“Toy”和orderedDate =“10天前”和numHits为“5”,以便在hbm2ddl期间将这些值转换为“默认”值并反映在架构中。< / p>
我应该使用什么注释,以便我能够以数据库不可知的方式实现这一点(例如对于h2,postgres,mysql)
答案 0 :(得分:2)
因此,如果您想要一个给定列的默认值,但是您对数据库应该如何保证DDL的详细信息不感兴趣,您也可以简单地将该字段初始化为其默认值:< / p>
@Colum(name="emp_salary")
private double salary = 1500;
那不行吗?
答案 1 :(得分:1)
不是JPA的一部分,虽然你可以将它包含在@Column上的“columnDefinition”中(这显然是数据存储依赖的,所以是一个hack)。如果您希望使用JPA的数据存储不可知,则必须依赖特定于供应商的
JDO是唯一明确允许该标准的持久性标准,因此与数据存储区无关