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
你確定這是一個休眠問題,而不是一個春天的數據問題?我還沒有嘗試過那個查詢,但我很確定我已經有這樣的工作。 –