sto usando CrudRepository
della primavera-dati-APP a definire solo un'interfaccia di un'entità e poi avere tutti i metodi CRUD standard senza dover fornire un'implementazione in modo esplicito, ad esempio:Come implementare solo il metodo specifico di CrudRepository in primavera?
public interface UserRepo extends CrudRepository<User, Long> {
}
Anche se ora mi piacerebbe piace sovrascrivere solo il metodo save()
nella mia implementazione personalizzata. Come potrei ottenere questo? Perché, se implemento l'interfaccia UserRepo
, dovrei implementare tutti gli altri metodi CRUD ereditati dall'interfaccia CrudRepository
.
Non riesco a scrivere la mia implementazione che ha tutti i metodi CRUD ma sovrascrive solo uno senza dover implementare tutti gli altri da solo?
Quindi, al fine di sovrascrivere solo il metodo di salvataggio dichiarare/implementare il metodo di salvataggio in UserCustomMethods/UserRepoImpl ?. L'esempio che fornisci qui mostra un metodo aggiuntivo, ma questo vale anche per i metodi esistenti? – coderatchet
Sì, è possibile aggiungere metodi all'interfaccia personalizzata con la stessa firma dei metodi predefiniti che si desidera sovrascrivere e implementarli nella classe Impl implementando l'interfaccia personalizzata: in questo modo, Spring Data utilizzerà l'implementazione personalizzata anziché quello predefinito Almeno questo funziona per me per il metodo delete in Spring Data JPA 1.7.2. –
Come posso utilizzare metodi non personalizzati di UserRepo (auto fornito da dati primaverili) in UserRepoImpl :)? – bodrin