Spring Data Jpa 的deleteById 方法报错问题,EmptyResultDataAccessException

项目框架:

SpringBoot+JPA+Oracle

问题描述:

调用JPA框架的deleteById()方法报异常,异常信息类型为:EmptyResultDataAccessException

问题原因:

通过查看源码发现,在使用JPA的 deleteById(id) 时,默认实现会通过 findById(id) 查询实体,如果找不到,就会抛出异常而不是静默忽略。

解决方案:

        知道问题产生的原因,就方便解决了,两种方法

方法一:执行前判断一下实体是否存在
方法二:对 deleteById(id) 进行处理,只需要在后面加上orElse(null)就可以了
repository.deleteById(id).orElse(null);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值