假設我有一個實體,稱爲Product
。我設計的回購爲添加自定義方法JPARepository與泛型
@Repository
interface ProductRepository implements JPARepository<Product, Integer>{}
這將繼承所有的默認方法,如save, findAll
等;
現在我想有一個自定義的方法,這也是其他實體的常用方法。我又增加了接口和實現
interface CustomRepository<T,ID>{ public void customMethod() }
class CustomRepositoryImpl implements CustomRepository<T,ID>{ public void customMethod(){} }
我重寫ProductRepository作爲
@Repository
interface ProductRepository implements
JPARepository<Product, Integer>,
CustomRepository<Product, Integer>
{}
現在,這並沒有給我任何編譯錯誤。但在運行期間,我得到這個錯誤:
No property 'customMethod' is found for Product
我在想什麼?
感謝您的代碼鏈接。什麼是班級「模特」。班級的定義是什麼?此外,ProductrepositoryImpl應該實現ProductRepository,否則spring將不會創建實例 – madhairsilence
所有代碼都包含在示例中。將集成測試作爲'mvn test'運行。 – manish
好的。模型@MappedSuperClass在這裏是新的。但是,再次。我可以看到customMethod在ProductRepositoryImpl中實現。這將使其僅適用於產品。如果我有新的實體稱爲服務。我將再次必須編寫相同的代碼「同上」。我如何將實現移動到泛型類 – madhairsilence