我正在将我的应用程序迁移到最新的Spring Data,但我无法正确地实现它。
假设我有一个仓库只有一个方法,为了通过名称附加查询我的实体:
根据文档,在这种情况下 - 如果未找到实体 - 将抛出
假设我有一个仓库只有一个方法,为了通过名称附加查询我的实体:
@Repository
interface FooRepository : JpaRepository<Foo, Long> {
fun findByName(name: String): Foo
}
根据文档,在这种情况下 - 如果未找到实体 - 将抛出
EmptyResultDataAccessException
。
然而,我也想能够通过id查询实体。如果我使用findById
,结果将是Optional<Foo>
。另一个选择是使用getOne
,但如果未找到,则会导致EntityNotFoundException
。
那么,除了将所有内容移动到Optional
之外,是否有其他方法可以在Kotlin中拥有统一的API?
findById
仍然会使用不同于Optional
的API - 我正在寻找一种统一的按ID和名称查询的方法。 - pwolaq