hibernate配置问题

油腻码农 2011-04-19 02:37:59
有三张表“分包合同执行跟踪A”、“分包合同B”、“建设合同C”
A和B的关系是多对一,B和C的关系也是多对一

hibernate中配置了它们的关系,现在C表的部分数据被删除了,所以在查询A表列表的时候出现了问题。

查询得到List没有错,页面引用的时候报了错,比如说 A.B.C.projectName 就报了错

报的错为
No row with the given identifier exists

在网上查了很多方法,比如说配置 fetch="join" not-found="ignore" 等,但这个只能解决两张表的问题,我这是三张表关系, 哪位大侠帮我想想办法,谢了!
...全文
85 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
i03630215 2011-04-19
  • 打赏
  • 举报
回复
在页面中捕捉指定的错误,然后转为异常处理,并给出友好处理,关联数据被删本来就是逻辑上的问题,无法一下子避免避免,只能抛出友好提示。
bearlly_da 2011-04-19
  • 打赏
  • 举报
回复
这种可以不用链接关系,根据ID来查询,
油腻码农 2011-04-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 luman2002 的回复:]
1.在页面显示C.projectName 之前,加个判断C是否为空
2.在数据库设置级联删除,删除C表数据的时候,B表相关联的数据也会被删除,保证数据的完整性(不建议使用)
[/Quote]

取得列表的时候,已经内联将不存在的数据过滤掉了,列表是没有问题的。
就是页面引用 A.B.C 的时候出了问题,就算判断C是否为空也没有用,好像是hibernate在检测整个数据库,有一个不存在就会报错。
luman2002 2011-04-19
  • 打赏
  • 举报
回复
1.在页面显示C.projectName 之前,加个判断C是否为空
2.在数据库设置级联删除,删除C表数据的时候,B表相关联的数据也会被删除,保证数据的完整性(不建议使用)

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧