26. CRUD для сущностей “Книги” и “Авторы” #
Условие задачи:
Опишите CRUD операции для сущностей, используя формат “GET /some/path 200;”.
Нужно реализовать следующие операции для сущности книги (BookEntity) с учётом таблиц: books, authors, books_authors:
- Получение всех книг
- Получение конкретной книги
- Обновление книги
- Создание книги
- Удаление книги
Спойлеры к решению
Подсказки
💡 Используйте принципы REST для формирования эндпоинтов.
💡 Подбирайте соответствующие HTTP методы для каждой операции: GET для получения, POST для создания, PUT для обновления и DELETE для удаления.
💡 Подбирайте соответствующие HTTP методы для каждой операции: GET для получения, POST для создания, PUT для обновления и DELETE для удаления.
Решение
1. Получение всех книг: GET /books
// Этот эндпоинт возвращает список всех книг из таблицы "books".
2. Получение конкретной книги: GET /books/{id}
// Эндпоинт для получения данных конкретной книги по уникальному идентификатору {id}.
3. Обновление книги: PUT /books/{id}
// Используется для обновления информации о книге. Клиент отправляет новые данные, и сервер возвращает обновлённую книгу.
4. Создание книги: POST /books
// Эндпоинт для создания новой книги. При успешном создании возвращается статус 201 (Created).
5. Удаление книги: DELETE /books/{id}
// Эндпоинт для удаления книги по {id}. Возвращает статус 204 (No Content) при успешном удалении.
Эти CRUD операции можно аналогичным образом определить и для сущности автора (AuthorEntity), если потребуется. 😊