Hibernate中的布尔值true

sam*_*ubr 6 java hibernate jpa

是否可以将hibernate设置为保存-1而不是1作为数据库中布尔字段的真值?我需要-1来保持与Delphi中的其他程序的兼容性.

027*_*027 6

@Type(type="com.sample.type.CustomClass")
@Column(name = "TEST_FLAG")
private boolean testFlag;
Run Code Online (Sandbox Code Playgroud)

@Type注解需要一个完整路径,实现了用户类型接口的类; 这是用于生成映射列的目标类型的工厂

CustomClas.java实现了hibernate提供的UserType接口

UserType实现使开发人员可以挂钩自定义逻辑/实现,并充当关系数据库和类属性之间的适配器.

您需要使用以下方法编写转换逻辑.

  • nullSafeGet() :根据结果集返回的数据创建自定义对象
  • nullSafeSet() :将自定义对象转换为需要传递给预准备语句的值

检查API以获取有关hibernate站点的详细信息.