Добавил:
Александр Дриль Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диплом Оголошення.pdf
Скачиваний:
1
Добавлен:
15.06.2023
Размер:
3.48 Mб
Скачать

Рис. 3.10. Security config для сервісу

3.4 Тестування розробленого застосунку

Щоб увімкнути web-сервіс треба підключити його до бази даних. Для цього треба ввести дані про MySQL сервер у файл application.properties. На рисунку

3.11 показано поля, які відповідають за підключення

Рис. 3.11. – Поля для підключення до бази даних.

Якщо ввести ці дані помилково, або не ввімкнути MySQL сервер то буде помилка, яка вказана на рисунку 3.12.

Рис. 3.12. – Помилка при підключенні до бази даних

Після запуску сервісу на екрані з'явиться головна сторінка сайту, на якій будуть відображені всі товари, що доступні для перегляду та покупки. Головна сторінка може містити списки товарів з їх назвами, зображеннями, цінами та можливими характеристиками.

Щоб забезпечити зручну навігацію та пошук серед багатої кількості товарів, був доданий спеціальний фільтр товарів. Цей фільтр розташований на окремій панелі, яка дозволяє користувачам встановлювати певні критерії для сортування та фільтрації товарів.

На рисунку 3.13 представлений результат пошуку товарів завдяки фільтру за містом

Рис. 3.13. – Сторінка товарів після застосування фільтра пошуку за містом

Також є пошук за назвою товару. Не треба завжди вводити назву для пошуку повністю, реалізовано частковий фільтр за назвою на рисунку 3.14, 3.15.

Рис. 3.14. – Результат пошуку за назвою

Рис. 3.15. – Білий список безпечених системних процесів

Процес реєстрації відображається через адресу /registration або кнопку реєстрації на веб-сайті або додатку. Користувач, який бажає продавати або переглядати товари, повинен пройти цей процес. Описаний процес передбачає заповнення форми реєстрації та збереження введених даних у базу даних за допомогою сервісу користувачів (User service) та методу createUser.

Щоб зареєструватися, користувач повинен перейти на адресу /registration

або натиснути на відповідну кнопку на веб-сторінці або в додатку. Після цього він отримає доступ до форми реєстрації, де йому буде потрібно ввести необхідну інформацію, таку як ім'я, електронну пошту, пароль та інші відповідні дані.

Після заповнення форми користувач відправляє її для валідації. Валідація може включати перевірку правильності введених даних, таких як формат електронної пошти . Якщо дані пройшли успішну валідацію, вони передаються до сервісу користувачів (User service).

User service має метод createUser (рис.3.16), який приймає введені дані з форми реєстрації і зберігає їх у базі даних. Цей метод виконує необхідну логіку для створення нового користувача і збереження його даних у відповідній таблиці або колекції бази даних.

Рис. 3.16. - Метод createUser

На рисунку 3.17, 3.18 представлена валідація для полів реєстрації та діаграму реєстрації. Якщо валідація не буде пройдена, то новий користувач не додасться в базу даних та не зможе авторизуватися на сайті.

Рис. 3.17. – Валідація полів при реєстрації.

Рис. 3.18. –Діаграма реєстрації на сервісі.

Розглянемо процес реєстрації користувача, на рисунках 3.19,3.20, 3.21 буде продемонстрована функція реєстрація користувача.

Рис. 3.19. – Форма реєстрації на сайті.

Рис. 3.20. – Заповнення форми реєстрації на сайті.

Рис. 3.21. – Результат заповнення форми реєстрації на сайті.

Після успішної реєстрації користувач має авторизуватись на сайті. На рисунку

3.22 продемонстрована сторінка авторизації та на рисунку 3.23 представлено діаграму авторизації.

Рис. 3.22. – Форма реєстрації на сайті

Рисунок 3.23 – Діаграма авторизації на сервісі

Процес додавання товару на сайт є найголовнішим процесом, розглянемо його на рисунках 3.24, 3.25, 3.26

Рис. 3.24. Форма додавання товарів на сайт

Рис. 3.25. Заповнена форма додавання товарів на сайт

Рис. 3.26. Результат додавання товару

На рисунку 3.27 показано діаграму бази даних, а саме, табличний вигляд сутностей та допоміжна таблиця hibernate_sequance. Ця табличка характеризує послідовність ID прі виборці. Існує три види послідовності:

1.IDENTITY - використовується вбудований БД тип даних стовпця -identity -

для генерації значення первинного ключа.

2.SEQUENCE - використовується послідовність – спеціальний об'єкт БД для створення унікальних значень.

3.TABLE – для генерації унікального значення використовується окрема таблиця, яка емулює послідовність. Коли потрібне нове значення, JPA

провайдер блокує рядок таблиці, оновлює значення, що зберігається там, і

повертає його назад до програми. Ця стратегія – найгірша за продуктивністю та її бажано уникати.

Рис. 3.27. - База даних проекту.

Також було створено панель адміністратора для блокування користувачів та редагування ролей. На рисунку 3.28 продемонстровано цю панель

Рис. 3.28. панель адміністратора.

Основні функції це: Бан користувача, редагування користувача да детальна інформація про користувача. На рисунках 3.29, 3.30 продемонстровано функціонал.

Рис. 3.29 блокування користувача

Рис. 3.30 редагування ролі користувача

У цьому розділі був представлений web-сервіс, який має наступну архітектуру та компоненти:

1. Spring Boot: Використовується як основний фреймворк для розробки backend-сервісу. Spring Boot надає стандартизовану структуру та інструменти для розгортання та управління додатком.

2. Apache Maven: Використовується для автоматизації збирання проекту,

керування залежностями та роботи з проектними конфігураціями. POM-файл використовується для опису структури проекту та визначення залежностей від фреймворків та бібліотек.

3.Java: Мова програмування, на якій написаний сервіс. Java є популярною мовою для розробки веб-додатків та має велику спільноту розробників.

4.Freemarker: Використовується як шаблонізатор для генерації HTML-

сторінок. Freemarker дозволяє вставляти динамічні дані у шаблони та генерувати

вихідний HTML.

5.База даних: У проекті використовується база даних MySQL. База даних використовується для зберігання і управління даними, пов'язаними з різноманітними товарами.

6.Файл конфігурації: У проекті присутній спеціальний файл конфігурації,

який містить налаштування для бази даних. Якщо підключення до бази даних невдале, це може призводити до генерації помилки.

7. Фільтр: У проекті реалізовано фільтр, який допомагає орієнтуватися серед різноманітних товарів. Деталі щодо функціональності та реалізації фільтра не надані в даному контексті.