2017-01-02 91 views
0

爲什麼會發生這樣的錯誤? 我使用Spring Data JPA 1.3.3,Spring 4.2.8和Spring MVC 4.2.8。JpaRepository和CrudRepository錯誤

UPDATE: 錯誤的代碼塊

Error:Error:line (8)java: name clash: save(java.lang.Iterable) in org.springframework.data.jpa.repository.JpaRepository and save(java.lang.Iterable) in org.springframework.data.repository.CrudRepository have the same erasure, yet neither overrides the other

我所有的庫添加的IntelliJ IDEA的模塊。只有JSTL由Maven下載。

enter image description here

+0

請添加錯誤代碼塊,而不是圖像,因爲它們變得不可讀。 –

+0

這可能是由於依賴衝突。檢查您的依賴版本或將其添加到問題。 –

+0

同樣擺脫@Query,你不需要它。 –

回答

0

看來你有依賴性問題。春季數據常見的Spring Data JPA的老版本可能是問題。

+0

我使用Spring Data JPA 1.3.3和Spring Data Commons Core 1.1.0。這是錯誤的原因? – kopylov

0

對於spring數據jpa,在回購中編寫原生查詢並不是一個好主意。除非你的要求只是難以編寫查詢方法。

對於你的情況,你只需要簡單的查詢方法類似這樣的用戶的

List<User> findByFirstName(String firstName); 

返回列表,因爲許多用戶可能有相同的用戶名

看看春天的數據文檔Query methods

希望它有幫助:)

+0

謝謝。但我這樣做是因爲我想學習這樣的方法 – kopylov

+0

哦,好的!但是你的問題是因爲春天混淆了原生和方法查詢。您可能需要通過重命名您的方法來澄清要使用哪一個,或者將'nativeQuery = true'添加到您的本機查詢參數中 –