JPA将布尔字段配置为以整数形式保留

时间:2010-10-21 13:41:36

标签: java jpa

在JPA中有一个注释来指定布尔字段应该作为整数持久化。 我正在使用OpenJPA,它目前将布尔字段保存为位。我宁愿使用整数1或0。

3 个答案:

答案 0 :(得分:12)

您可以指定列定义:

@Column(name="boolColumn",
     columnDefinition="INT(1)")

答案 1 :(得分:7)

您可以使用以下注释:

@Type(type="numeric_boolean")

如果你想写Y和N而不是0,1,你可以使用

@Type(type="yes_no")

答案 2 :(得分:0)

很长一段时间以后才开始思考这个问题,但是与Hibernate 4.3.7更高版本相关,您可以使用

import org.hibernate.annotations.Type;
@Column(name="enabled1", nullable=false)
@Type(type = "org.hibernate.type.NumericBooleanType")  
public Boolean getEnabled() {
    return this.enabled;
}

enter link description here

所示

已经在从PostgreSQL到Oracle的迁移中进行了测试,以避免对JPA实体造成影响