如何解决Spring JPA如何从Delete方法获取实例
稍后我需要使用已删除对象的实例,但是默认情况下,此deleteById方法返回null。所以是的,我可以在删除之前使用findBy__获取它的实例,但是我想知道还有比这更简单的吗?
val instance = repository
.deleteById(_targetId)
.block()!!
// I need to use this instance later
解决方法
我检查了documentation并进行了一点编码。我找不到一个对存储库的方法调用的好解决方案,因为任何delete
方法都不返回类型。我在存储库中创建了一些remove
方法,但是无法使用其他返回类型将此方法添加到存储库中。我猜只有你描述的方式存在。您可以在服务中使用以下代码来实现此目的:
public Entity delete(Integer id) {
Entity entity = repository.findById(id).orElseThrow(
() -> new IllegalArgumentException("entity with id " + id + " does not exist"));
repository.delete(entity);
return entity;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。