Return 未找到匹配项时的 JPA 查询值

Return value of JPA query when no matches found

我在我的存储库中使用 Spring JPA named querys。我的问题是,我无法在任何地方找到任何信息,对于不匹配任何结果的查询将返回什么值。我假设 findOne() 为空,但我不知道 findAllByName() 函数会是什么。

有谁知道 his/her 经验或知道文档中的位置?

根据我的个人经验,如果您在存储库中搜索一个对象,例如通过 Id 或 Name 命名查询方法 returns 一个 T 类型的对象,但是如果未从您的回购中找到任何结果,它将 return 为空。

可以 return 多个元素的方法将生成一个空集合 List<T>(不为空)。

这里有一些文档: http://docs.spring.io/spring-data/jpa/docs/current/reference/html/#repository-query-keywords

Appendix D: Repository query return types

Supported query return types Query return types:

T An unique entity. Expects the query method to return one result at most. In case no result is found null is returned. More than one result will trigger an IncorrectResultSizeDataAccessException.

Iterator An Iterator.

似乎只有当 return 类型是 T 类型时,如果没有匹配项,则 return 是唯一指定 null 的类型。