我有日期時間性質的實體堅持用休眠如何喬達日期時間轉換成JPA本機查詢
@Type(type = "org.jadira.usertype.dateandtime.joda.PersistentDateTime")
@Column(name = "EFF_DT")
protected DateTime effDt;
這一切運作良好和良好的定期彈簧數據的JPA生成的查詢。
我想添加自定義本地查詢
@Query(value = "SELECT COUNT(*) FROM wsa_circuit_state_history ch WHERE ch.eff_dt between ?1 and ?2", nativeQuery = true)
Integer countEffDateBetween(DateTime start, DateTime end);
我的錯誤是,當試圖調用這是
java.sql.SQLException: ORA-00932: inconsistent datatypes: expected DATE got BINARY
這是我用來獲取與普通彈簧同樣的錯誤-data finders將自定義類型映射添加到我的實體之前
@Type(type = "org.jadira.usertype.dateandtime.joda.PersistentDateTime")
如何使彈簧-data-jpa/hibernate使用參數的自定義類型映射到本地查詢?
你找到這個答案? –
@WojciechGórski不,我沒有找到解決辦法。最後,我設法在JPA中重新編寫查詢,然後hibernate @Type註釋開始處理來自nz.co.vodafone.wcim的類型轉換'@Query(「select count(ch.circuitId)。 model.CircuitStateLog ch其中ch.effDt介於?1和?2之間以及ch.state =?3「)' –