使用自定义 Spring JPA 存储库查询空 Table 时会发生什么

what happens when I query an empty Table when using custom Spring JPA repository

table的结构如下:

FILE_NAME

FILE_TYPE

FILE_SIZE

CREATED_DATA

查询是:

@Query("Select f.fileSize from FileEntity e where f.fileType =:fileType 
order by f.createdDate limit 1")
Long findFileSize(@Param("fileType") String fileType);

这是一个查询,returns 以 dB 为单位存储的最新文件的文件大小。

如果 table 为空,此查询 return 将执行什么操作。它会 return Long 的默认值还是抛出异常?

如果 table 没有行,则查询将 return 没有行。如果有行并且 where 子句将它们全部过滤掉,这也是一样的。

如果您在没有先检查行是否存在的情况下尝试访问结果集中的值,您可能会收到错误消息。

它将return NULL。因此,LONG wrapper class 可用于存储值。