【发布时间】:2010-12-07 08:35:55
【问题描述】:
我想知道给定记录是否存在于数据库中。到目前为止,我已经通过编写 JPA 查询并通过 getSingleResult() 方法运行它来实现这一点。如果具有给定参数的记录不存在,这将抛出NoResultException。当然,记录不是必须存在的,所以有时这是正常行为,这就是为什么我问自己,是否有必要抛出一个我必须通过catch块处理的异常?据我所知,异常处理的成本是相当大的,所以我对这个解决方案不是很满意,而且我什至不需要对象,我只需要知道它在数据库中的存在。
有没有更好的方法来检查一个对象是否存在?例如。使用getResultList() 并检查它的大小可能吗?
【问题讨论】:
-
好问题,但您应该将标题更改为“如何使用 JPA 检查记录是否存在”或类似内容。
-
感谢您的评论,完成:)
-
更新:存储库存在(id)方法。如果记录存在,repo.exist(id) 返回 true,否则返回 false