从Spring Data Lovelace SR4 / Spring Boot 2.1.2开始,CrudRepository.findByIdOrNull(id: ID): T? = findById(id).orElse(null)
Kotlin扩展现在提供了一种开箱即用的方法来检索Spring Data中的可为空的实体。
如果出于性能原因,您希望避免使用Optional<T>
包装器,请注意,还可以使用findFooById(id: ID): T?
函数创建自定义接口。查询执行是特定于存储的,但大多数都使用内部可为空的值,这将避免Optional<T>
包装程序的开销。请注意,对于大多数用例而言,此开销可以忽略不计,因此建议使用内置扩展。
有关更多详细信息,请参见DATACMNS-1346。