Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.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 如何在Spring数据Jpa中使用投影返回自定义对象?_Java_Spring_Hibernate_Spring Data Jpa - Fatal编程技术网

Java 如何在Spring数据Jpa中使用投影返回自定义对象?

Java 如何在Spring数据Jpa中使用投影返回自定义对象?,java,spring,hibernate,spring-data-jpa,Java,Spring,Hibernate,Spring Data Jpa,我试图从spring数据jpa中返回自定义对象-本机查询 以下是我迄今为止所做的工作 我应该能够创建如下查询: Query(nativeQuery = true, value = "select sc.case_type as caseType, sc.revision as revision from smart_casemodel sc minus select s.casetype, s.revision from smart_case s") List<CtRevOnly>

我试图从spring数据jpa中返回自定义对象-本机查询

以下是我迄今为止所做的工作

我应该能够创建如下查询:

Query(nativeQuery = true, value = "select sc.case_type as caseType, sc.revision as revision from smart_casemodel sc minus select s.casetype, s.revision from smart_case s")
List<CtRevOnly> findNotUsedCasemodels();
那就叫它吧

caseModelRepository.findNotUsedCasemodels();
但是我有一个例外

javax.persistence.PersistenceException: org.hibernate.MappingException:未知实体: javax.persistence.Tuple


知道我做错了什么吗?

对于遇到同样问题的人
我正在使用Hibernate5.1.2.Final

我想有个bug,我需要升级到hibernate5.2.11,才能让它正常工作
请参见

您需要将查询从SQL查询更改为JPQL查询,并使CtRevOnly成为一个类而不是一个接口,请从您提到的链接中检查答案。在JPQL下面的“已接受答案”部分是关于本机查询的部分,这正是我感兴趣的部分。我知道这可以通过其他方式完成,我对本机查询和干净的代码很好奇。我想让它工作使用投影。未提及,将其更改为JPQL比较困难,因为不支持“减号”。使用接口的官方文档
caseModelRepository.findNotUsedCasemodels();