Как создать собственный метод из Spring JPA Repository, который разделяет функции вставки и обновления? Скажем, создать метод для вставки и метод обновления для обновления.Spring JPA Repository - отдельный способ вставки и обновления
Дополнительный вопрос: Почему Spring JPA Repository не разделяет эти методы по дизайну?
Моя текущая реализация - Создать проверку на уровне сервиса.
Мой Repository
public interface UserRepository extends CrudRepository<User, Integer> {}
Моя_служба
@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);
}
}
}
Вы можете попытаться @Override сохранить метод при создании хранилища и поэтому затем создать метод обновления. Но я не думаю, что это хорошее решение. – Mike
Зачем вам это нужно, чего вы хотите достичь? @Mike: вы не можете переопределить его, так как метод сохранения написан в интерфейсе CrudRepository. –
Я пробовал его перед тем, как писать, и он компилировался, поэтому я подумал, что вы можете это сделать. Это была попытка, но, как я уже сказал, это нехорошее решение. – Mike