Wie erstellt benutzerdefinierte Methode von Spring JPA Repository, dass trennt einfügen und aktualisieren Funktionalität? Lassen Sie uns erstellen Methode für einfügen und Update-Methode für die Aktualisierung.Spring JPA-Repository - separate einfügen und Update-Methode
Zusätzliche Frage: Warum Spring JPA Repository diese Methoden nicht durch Design zu trennen?
Meine aktuelle Implementierung ist erstellen Validierung bei Service-Schicht.
Mein Repository
public interface UserRepository extends CrudRepository<User, Integer> {}
Mein Service
@Service
public class UserService {
public void addUser(User user) {
if (!userRepository.exists(user.getId())) {
userRepository.save(user);
}
}
public void updateUser(int id, User user) {
if (userRepository.exists(user.getId())) {
userRepository.save(user);
}
}
}
Sie können versuchen, Verfahren @Override speichern, wenn Sie Repository erstellen und so dann eine Update-Methode erstellen. Aber ich denke nicht, dass das eine gute Lösung ist. – Mike
Warum willst du es, was willst du erreichen? @Mike: Sie können es nicht überschreiben, da die Speichermethode in der Schnittstelle CrudRepository geschrieben wird. –
Ich habe es vor dem Schreiben versucht und es wurde kompiliert, also dachte ich, du kannst es tun. Es war ein Versuch, aber wie gesagt, es ist keine gute Lösung. – Mike