Java: Веб-технологии
Теория: Хранение данных
Среди сайтов выделяют две категории:
- Статические сайты состоят из готовых наборов HTML-страничек и не содержат программного кода на бэкенде. Например, так сделаны гайды Хекслета
- Динамические сайты формируют свои странички на основе информации, которую разработчики и пользователи сайта добавляют в базу данных. Наглядные примеры — соцсети или почтовые сервисы
Далее в курсе мы будем работать над динамическими сайтами, но с одной особенностью. Вместо использования полноценной базы данных мы будем хранить данные в памяти с помощью репозиториев.
Что такое репозиторий
Репозиторий, специальный класс который занимается тем, что сохраняет данные объектов куда-то, обычно в базу данных. Репозитории позволят хранить данные между запросами к сайту. Но наша реализация репозиториев будет хранить данные в памяти приложения, без их сохранения в базу. Это значит, что если перезапустить приложение, то данные пропадут.
Почему мы так решили не работать с базами данных? В ближайших уроках мы сосредоточимся на том, как работает веб. Чтобы изучить эту тему, достаточно хранить данные в памяти, не отвлекаясь на работу с базой данных. Подключением базы мы займемся в конце курса.
Посмотрим на примере, как работают репозитории:
У этого класса есть несколько статических методов для сохранения и извлечения объектов. Этого достаточно для наших задач.
Ниже мы приводим исходный код класса CourseRepository для тех, кому интересно:
Точно такой же класс мы создадим под каждую сущность, с которой будем работать.



