JavaDeveloperModule5
1. Выполнять регистрацию пользоваталей2. Выполнять авторизацию пользователей
3. Выполнять CRUD операции над следующими объектами:
==========================
Product:UUID id; String name; BigDecimal price; Manufacturer manufacturer;
==========================
Manufacturer:UUID id; String name; Set products;
==========================
Role:UUID id; String name;
==========================
User:UUID id; String email; String password; String firstName; String lastName; Set roles;
==========================
Роли пользователей:
- Admin - имеет возможность выполнять все CRUD операции
- User - имеет доступ только для чтения
В базе данных хранятся данные о производителях (Manufacturer) и товарах (Product). Каждый товар имеет одного производителя, и каждый производитель имеет набор товаров.
Страницы:
- Manufacturers (список производителей + возможность создавать новых, редактировать и удалять созданных производителей)
- Products (список товаров + возможность создавать новых, редактировать и удалять созданные товары)
- Users (список всех ползователей приложения + возможность создавать новых, редактировать и удалять созданных пользователей) - ТОЛЬКО для ADMIN (и чтение и редактирование)
При создании товара выбор производителя реализовать с помощью выпадающего меню.
Результатом выполнения задания должны быть:
- рабочее приложение, развернутое на heroku - https://www.heroku.com/
- отдельный репозиторий с описанием задачи, подробными инструкциями по запуску приложения на локальной машине, файлами для инициализации и заполнения БД и ссылкой на видео с демонстрацией работы приложения.
Необходимо придерживаться паттерна MVC (model, view, controller).
Все классы должны быть грамотно разложены по пакетам и грамотно именованы (model, dao, controller).
Технологии: Java, SQL, Spring (MVC, Data, Security), JSP, Maven, Tomcat, Git