我有一个包含“布尔”字段的Hibernate POJO

时间:2016-05-17 12:01:56

标签: java spring hibernate

我有一个包含boolean字段的Hibernate POJO,如果该对象尚不存在(即创建一个新对象),那么我希望boolean字段值为默认值到false。如何使用注释完成此操作?

目前我使用过:

@Column(name = "IS_DELETED",columnDefinition = "Boolean DEFAULT new Boolean(false)")
private Boolean isDeleted;

@Column(name = "IS_DELETED",columnDefinition = "Boolean DEFAULT false")  
private Boolean isDeleted;

我默认需要使用它来存储空值....即使跟随也无法正常工作

@Column(name = "IS_DELETED",nullable=false,columnDefinition = "Boolean DEFAULT new Boolean(false)")  
private Boolean isDeleted;

1 个答案:

答案 0 :(得分:0)

您需要使用的是

@Column(name = "IS_DELETED",columnDefinition = "tinyint(1) default 0")
private Boolean isDeleted;

但这个值只会是" False"当你保存到数据库中时,所以如果你创建一个实体并检查该值是否为NULL,那么我建议使用默认值,因为有些人已经说过了

@Column(name = "IS_DELETED",columnDefinition = "tinyint(1) default 0")
private Boolean isDeleted = Boolean.FALSE;

但是在这种情况下,columnDefinition不会有意义,永远不会被使用......由你来决定你的业务逻辑在逻辑上是什么