Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java hibernate:使用query.uniquevalue()_Java_Hibernate_Jakarta Ee - Fatal编程技术网

Java hibernate:使用query.uniquevalue()

Java hibernate:使用query.uniquevalue(),java,hibernate,jakarta-ee,Java,Hibernate,Jakarta Ee,如果只有一条记录与查询匹配,那么query.list将只返回一条记录。那么query.uniqueResult有什么用途?因为如果有多条记录与查询匹配,它将抛出ununiqueresultexception。这种方法有什么用?如果您确定只得到一条记录,您可以使用query.uniqueResult。例如,当您搜索唯一标识符时 如果你这样做 select * from person where id =1 您可以使用query.uniqueResult,因为您只能获得一条或零条记录 如果你这样想

如果只有一条记录与查询匹配,那么query.list将只返回一条记录。那么query.uniqueResult有什么用途?因为如果有多条记录与查询匹配,它将抛出ununiqueresultexception。这种方法有什么用?

如果您确定只得到一条记录,您可以使用query.uniqueResult。例如,当您搜索唯一标识符时

如果你这样做

select * from person where id =1
您可以使用query.uniqueResult,因为您只能获得一条或零条记录

如果你这样想

select * from person where name  = 'Jens'
您必须使用query.list,因为您可以获取多条记录。

As状态:

方法返回与查询匹配的单个实例,如果查询不返回结果,则返回null

返回: 单个结果或空值 抛出: UnuniquereSultException-如果有多个匹配结果


因此,如果您确定只返回一个结果,那么您可以使用这个方便的方法直接获取结果,而不是列表,从而避免了result.get0的冗长使用。如果您在唯一性方面失败,则会引发异常。

有人能给我一个清晰的场景视图吗?它真的很有用。我相信使用它时,我需要先查看一下数据库。。。;