@Query("select t from PartialDischargeForecast t where t.monitoringName =?1 and t.futureTime = ?2")
List<PartialDischargeForecast> queryByName(String name,Date date);
jpa中這樣一句把時間作爲參數傳入作條件查詢時,返回沒有結果。查看後臺的sql日誌,輸出的sql又是正確的。
並且將後臺打印該方法執行的sql直接放在數據庫中執行時,又能查詢到數據,奇怪!
原因不明。不過解決辦法倒是有,在方法定義入參時,給時間類型的參數加上註解 @Temporal(TemporalType.TIMESTAMP),進行查詢即可生效
@Query("select t from PartialDischargeForecast t where t.monitoringName =?1 and t.futureTime = ?2")
List<PartialDischargeForecast> queryByName(String name,@Temporal(TemporalType.TIMESTAMP) Date date);