休眠默认值



hibernate有没有办法为每个字段定义默认值,为了数据库大小,写null而不是这些默认值?

对于inst.,假设String的默认值为"。我希望Hibernate:

  1. 为数据库中具有NULL的每个字段返回"
  2. 当我尝试写入"时,将NULL写入数据库

当然,我可以写成千上万的Getter和Setter,但它能自动完成吗?

如果需要真实的数据库默认值,请使用columnDefinition-@Column(name="myColumn",nullable=false,columnDefinition="intdefault 100")。注意columnDefinition中的字符串是数据库依靠的此外,如果您选择此选项,则必须使用动态插入,因此Hibernate不包括具有null值的列插入时。否则,谈论违约是无关紧要的。

但是,如果您不想要数据库默认值,而只是一个默认值值,只需像这样初始化变量-private整数myColumn=100;

来源:

如何在Hibernate 中设置默认值

当然,不是使用:

columnDefinition = “int default 100"

试试类似的东西:

columnDefinition = “TEXT default `default_text`"

我不确定这在语法上是否正确,但请查看以下内容:

使用Hibernate Annotation 的文本字段

使用MYSQL 中的hibernate注释设置默认值

您可以使用字段getter来实现这样的东西,它很简单,而且会达到目的。

最新更新