为了账号安全,请及时绑定邮箱和手机立即绑定

有没有办法禁用获取 Hibernate 中列的整个值集?

有没有办法禁用获取 Hibernate 中列的整个值集?

holdtom 2022-10-12 09:57:26
在我们的“进程”表中有一个“类型”列。该列的值集在我们代码的枚举中定义。但是,此表中有过时的行。这意味着有些行的“类型”是代码枚举中不存在的值。问题是每当我们访问此表中的任何行(不是过时的行)时,我们都会收到一个错误,即该列存在未知值。有没有办法在休眠中禁用此功能,因为我们不想删除这些行。@EqualsAndHashCode(callSuper = true, of = {})@Table(name = ProcessEntity.TABLE_NAME)public class ProcessEntity extends BaseEntity implements ValidityHolder {public static final String TABLE_NAME = "PROCESS";@OneToMany(mappedBy = "consent", cascade = CascadeType.ALL)private Set<ConsentAnswerEntity> consentAnswers;@OneToMany(mappedBy = "consent", cascade = CascadeType.ALL)private List<ProcessConsentEntity> processConsents;@OneToMany(mappedBy = "consent", cascade = CascadeType.ALL)private Set<ProcessTypeConsentEntity> processTypeConsents;@Enumerated(EnumType.STRING)@Column(name = "TYPE_ID")private Type TpyeId;
查看完整描述

1 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

如果这些“过时”的记录不再适合您的 Hibernate 数据模型,那么我建议将它们移动到某个存档表中。毕竟,您现在无论如何都不能使用 Hibernate 真正选择它们,所以至少在应用程序级别,它们没有任何用途。

对于在不物理删除记录的情况下逻辑删除记录的更通用方法,请查看软删除。使用软删除,您将向表中添加一个布尔列,如果标记该列,则表明该记录在逻辑上不再存在。


查看完整回答
反对 回复 2022-10-12
  • 1 回答
  • 0 关注
  • 61 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信