Take2:spring data jpa:在结果元组中找不到别名!确保您的查询定义了别名

时间:2017-04-11 20:19:16

标签: spring spring-data spring-data-jpa

我得到与this question.相同的错误但是,我理解这个问题(实际上是3个独立的问题)已得到修复。我正在使用SD-JPA 1.11.1.RELEASE和SD-commons 1.31.1.RELEASE。

我的用例完全不同。我读到1.10.x +中的Spring Data JPA支持发送回Java8流。我还读到1.11.x +版本支持使用Projections。因此,我试图在Stream中返回一个Projection。进入调试器后,我发现下面的MyEntity类( MyEntityProjection类)将返回Stream。

所以我的问题:有没有人知道我尝试的是否真的得到了支持?关于这一点,文档并不是很清楚。

以下是我的代码的摘要:

public interface MyEntityJpaRepository extends JpaRepository<MyEntity, Long> {

    @Query("SELECT me FROM MyEntity me WHERE me.id IN (:ids) ")
    Stream<MyEntityProjection> findAllAndStream(@Param("ids") Iterable<Long> ids);

1 个答案:

答案 0 :(得分:0)

是的,支持流中的预测。如果它们不起作用,则可能是Bug或您的代码出现问题。

通常,包装类型的所有组合(Stream s,Collection s,OptionalFuture等等都应该可以与实际结果类型自由组合(实体,投影,标量类型)。