Бэкенд для сервиса, который будет работать с фильмами и оценками пользователей, а также возвращать топ фильмов, рекомендованных к просмотру. Приложение представляет собой монолитную структуру. Оcсновные объекты взаимодействия:
- пользователи
- фильмы, режиссёры и жанры
- рейтинги возрастных ограничений
- отзывы, лента событий,
- добавление и хранение данных в памяти;
- добавление и хранение данных в файле;
- добавление и хранение дыных в базе данных;
- доступ к методам менеджера через HTTP-запросы.
SELECT film_id, name, description, release_date, duration, mpa
FROM Film
SELECT *
FROM Film AS f LEFT JOIN likes AS l ON f.film_id = l.film_id
WHERE f.film_id = ?
GROUP BY f.film_id, l.id;
SELECT f.film_id, f.name, f.description, f.release_date, f.duration, f.mpa, l.id
FROM likes AS l
RIGHT JOIN Film AS f ON f.film_id = l.film_id
GROUP BY f.film_id, l.id
ORDER BY COUNT(l.id) DESC LIMIT ?
SELECT f.friend_id, u.id, u.email, u.login, u.name, u.birthday
FROM friends AS f
LEFT JOIN friends AS fr ON f.friend_id = fr.friend_id
INNER JOIN Person AS u ON f.friend_id = u.id
WHERE f.id = ? AND fr.id = ?
GROUP BY f.friend_id;
- склонировать проект из ветки add-database и открыть его в IntelliJ IDEA
- выполнения сборку проекта
- запустить выполнение главного метода программы Main класса FilmorateApplication.
Проверить работоспособность приложения, можно с помощью готовой коллекции тестов в Postman или запустив модульные тесты из папки test, которая находится в дирректории проекта.