5
工作,我有以下方法@Repository接口,用于检查是否数据库包含一个记录碰撞(在商业领域的含义)与一个 我要“时存在的情况下”坚持(我不关心什么碰撞记录):JPA @Query与不与Hibernate
@Query("select case when exists (
select me from MyEntity me where {my conditions regarding someParam here}
) then true else false end from MyEntity")
boolean findColliding(@Param("someParam") String someParam);
上,我运行它是空表(PostgreSQL的),因此存在子查询应该找不到任何东西,我相信整个方法应该返回false为case表明它只能返回true,否则返回false。
,则返回null #facepalm
我的查询传递启动(无QuerySyntaxException)查询语法检查,但在执行时抛出异常:
org.springframework.aop.AopInvocationException: Null return value from advice does not match primitive return type for: public abstract boolean findColliding(...)
我在做什么错?我应该采取其他方法解决我的问题吗?
休眠5.0.11.Final
你确定这是一个休眠问题,而不是一个春天的数据问题?我还没有尝试过那个查询,但我很确定我已经有这样的工作。 –