16 подписчиков
Если говорить про транзакции и работу с базой, то нельзя и не упомянуть про понятие CRUD операции (create, read, update, delete) и способы их выполнения с использованием репозиториев Spring Data JPA. Прежде всего CRUD операции (create, read, update, delete) это основные операции, которые выполняются с данными в базах данных. В Spring Data JPA эти операции могут быть выполнены с помощью репозиториев.
Create (Создание)
Операция создания позволяет добавить новую запись в базу данных. В Spring Data JPA это может быть выполнено с помощью метода save() в репозитории. Например:
public interface UserRepository extends JpaRepository<User, Long> {
User save(User user);
}
Read (Чтение)
Операция чтения позволяет получить данные из базы данных. В Spring Data JPA это может быть выполнено с помощью методов findById() или findAll() в репозитории. Например:
public interface UserRepository extends JpaRepository<User, Long> {
User findById(Long id);
List<User> findAll();
}
Также к чтению можно отнести методы existsById(id): Проверяет, существует ли сущность с данным идентификатором и count(): Возвращает общее количество сущностей.
Update (Обновление)
Операция обновления позволяет изменить данные в базе данных. В Spring Data JPA это может быть выполнено с помощью метода save() в репозитории. Да, действительно повторяется метод для создания, т.к. вызов save() сохраняет сущность в базе данных, возвращая сохраненную сущность. Если сущность уже существует, она обновляется. Например:
public interface UserRepository extends JpaRepository<User, Long> {
User save(User user);
}
Delete (Удаление)
Операция удаления позволяет удалить данные из базы данных. В Spring Data JPA это может быть выполнено с помощью метода deleteById() или delete() в репозитории. Например:
public interface UserRepository extends JpaRepository<User, Long> {
void deleteById(Long id);
void delete(User user);
}
В заключение, использование репозиториев Spring Data JPA позволяет выполнять CRUD операции с данными в базах данных с помощью простых методов. Это упрощает работу с базами данных и позволяет обеспечить целостность данных в приложении.
Отдельно хочу обратить внимание, что Spring Data JPA это прежде всего синтаксический сахар, который совершает некоторую «магию», чтобы до конца понять, как работает эта магия и самому ее сотворить, рекомендую выполнить самостоятельное задание. Не буду изобретать велосипед и посоветую выполнить вот это задание
2 минуты
10 марта 2024