一尘不染

在处理旧版数据库时,Hibernate在丢失的行上阻塞

hibernate

我正在尝试在旧数据库(仍具有旧PHP客户端)上实现hibernate状态,并且遇到了一些问题,因为编写原始应用程序的人不知道他们在做什么。

设置数据库时,所有列均不可为空,因此,如果没有任何记录,它们会将外键默认为0。此外,它们在表上没有正确的外键,因此有一些具有无效ID。我没有选择更改架构或将适当的列设置为空的选项。

这是我从hibernate中得到的错误:

Caused by: org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [com.tv.platform.domain.Program#0]

我想用一种优雅的方式来处理此问题,如果该行无效或不存在,则该字段将为null,但是我没有运气找到如何在文档中处理此问题。

有小费吗?


阅读 196

收藏
2020-06-20

共1个答案

一尘不染

批注:@NotFound(action = NotFoundAction.IGNORE)

2020-06-20