Han*_*rst 3 hibernate jpa spring-boot
如何将 Hibernate 配置为对每个布尔列使用其内置类型NumericBooleanType@Type ,而不在每列上使用任何注释 ( )?
编辑:更多一点背景知识 - 目标是使用一个代码库支持 Oracle 和 Postgres,并且由于 Oracle 没有boolean类型,我想让 Postgres 像 Oracle 一样存储布尔值0/1
如果您的数据库列具有数字数据类型并且实体具有布尔属性,则您无需执行任何操作。
如果这不起作用,请使用@Type注释:
@Type(type = "org.hibernate.type.NumericBooleanType")
private boolean enabled;
Run Code Online (Sandbox Code Playgroud)
或者,您可以编写一个具有自动应用功能的 JPA 转换器:
@Converter(autoApply = true)
public class FileConverter implements AttributeConverter<Boolean, Short> {
@Override
public Short convertToDatabaseColumn(Boolean value) {
return value ? 1 : 0;
}
@Override
public Boolean convertToEntityAttribute(Short dbData) {
return dbData == 1;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3539 次 |
| 最近记录: |