1
LVIV STATE UNIVERSITY OF LIFE SAFETY
THE STATE EMERGENCY SERVICE OF
UKRAINE
ЛЕКЦІЯ №22. ПОВТОРЕННЯ ВИВЧЕНОГО ЗА КУРС
2
ПЛАН
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
3
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Stream API. Lambda
СТАНОМ НА 01.02.2023
Лямбда-вирази в Java. Функціональне програмування
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
ООП vs
Функціональне програмування
Об'єктно-орієнтоване програмування (ООП) розглядає програму як множину об'єктів, що мають свій стан (поля) і поведінку (методи). Взаємодія між об'єктами є ключовою характеристикою цієї парадигми.
Функціональне програмування (ФП) базується на роботі з функціями як першокласними об'єктами. Тобто, функції можуть передаватися як аргументи, повертатися як значення й існувати незалежно від стану об'єктів.
У класичному ФП функції є математичними виразами: вони отримують вхідні дані й повертають результат без побічних ефектів.
СТАНОМ НА 01.02.2023
Лямбда-вирази в Java. Функціональне програмування
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Java не є чисто функціональною мовою, оскільки:
Проте Java дозволяє застосовувати функціональний стиль через лямбда-вирази та Stream API.
СТАНОМ НА 01.02.2023
Лямбда-вирази в Java. Функціональне програмування
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Лямбда-вирази в Java — це короткий спосіб написати анонімний (безіменний) метод прямо в коді. Вони дозволяють писати більш компактний і зрозумілий код, особливо коли працюєш з функціональними інтерфейсами (інтерфейси з єдиним методом).
Простий приклад
Уявімо, що нам треба створити анонімний метод, який приймає число та повертає його подвоєне значення.
Раніше в Java це робили так:
Анонімний клас — це клас без імені, який оголошується і створюється одночасно. Він часто використовується для створення екземплярів інтерфейсів або абстрактних класів без необхідності створювати окремий клас.
СТАНОМ НА 01.02.2023
Лямбда-вирази в Java. Функціональне програмування
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Тут ми створили анонімний клас, що виглядає громіздко.
З лямбда-виразами цей код виглядає набагато простіше:
СТАНОМ НА 01.02.2023
Лямбда-вирази в Java. Функціональне програмування
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Як це працює?
СТАНОМ НА 01.02.2023
Лямбда-вирази в Java. Функціональне програмування
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Лямбда-вирази — це анонімні функції, що дозволяють передавати поведінку як параметр.
СТАНОМ НА 01.02.2023
Лямбда-вирази в Java. Функціональне програмування
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
УВАГА!!!
СТАНОМ НА 01.02.2023
Лямбда-вирази в Java. Функціональне програмування
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Інструкція invocedynamic (оскільки як такої лямбди не було, до 8-ї java, то насправді при виклику лямбди компілятор перетворює її на приватний метод і обробляє за допомогою інструкції invocedynamic)
12
СТАНОМ НА 01.02.2023
Вступ до Stream API.
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Streams - це потужний інструмент в Java 8 і пізніших версіях, який дозволяє обробляти колекції даних (списки, множини тощо) в декларативному стилі, тобто, описуючи "що" потрібно зробити, а не "як".
13
СТАНОМ НА 01.02.2023
Вступ до Stream API.
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Стріми & Колекції
Не є сховищем даних
(Not Data Storage)�Потоки не зберігають дані самі по собі, вони лише обробляють їх на льоту.
Функціональний характер (Functional Character)�Потоки підтримують функціональне програмування через лямбда-вирази та методи, такі як map(), filter(), reduce().
Відкладене виконання (Execution Delay)�Операції на потоках виконуються лише тоді, коли вони необхідні (наприклад, при виклику collect()). Це дозволяє оптимізувати роботу.
Внутрішній ітератор (Internal Iterator)�Потоки використовують внутрішню ітерацію, що покращує продуктивність, оскільки система самостійно керує процесом.
Необмеженість
(Stream Unlimited)�Потоки можуть бути нескінченними, оскільки вони працюють із потоками даних, що можуть генеруватися на вимогу.
14
СТАНОМ НА 01.02.2023
Вступ до Stream API.
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Це зображення ілюструє процес обробки колекції за допомогою Java Stream API, використовуючи фільтрацію.
Початкова колекція (Collection<Color>)
Фільтрація (Predicate<Color> isRed?)
Групування (Map<Boolean, Color>)
Потік поділяється на дві групи:
15
СТАНОМ НА 01.02.2023
Вступ до Stream API.
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Проміжні та термінальні операції
Ці операції отримують дані з потоку і створюють новий потік, в який повертають результат своєї роботи. Вони працюють як конструктори.
Наприклад: фільтрація, сортування, перетворення тощо.
Ці операції отримують дані з потоку і повертають інший об'єкт, такий як колекція, примітивні значення, об'єкти, Optional тощо.
Наприклад: збір/згортання даних, підрахунок тощо.
16
СТАНОМ НА 01.02.2023
Вступ до Stream API.
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Проміжні та термінальні операції
Потік не починає виконуватися, доки не буде визначено термінальну операцію!!!
17
СТАНОМ НА 01.02.2023
Вступ до Stream API.
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Проміжні та термінальні операції
18
СТАНОМ НА 01.02.2023
Вступ до Stream API.
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Розглянемо приклад коду, який обробляє набір транзакцій у двох версіях: класично через колекції та потоки.
Зі списку необхідно вибрати ті операції, які відповідають певному типу.
Потім потрібно відсортувати вибрані транзакції в порядку спадання певної вартості.
Вивести їх по id.
Клас інкапсулює три поля з незмінними даними:
А List transactions також визначено, що містить кілька екземплярів класу Transaction.
19
СТАНОМ НА 01.02.2023
Вступ до Stream API.
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Зі списку необхідно вибрати ті операції, які відповідають певному типу.
Потім потрібно відсортувати вибрані транзакції в порядку спадання певної вартості.
20
СТАНОМ НА 01.02.2023
Клас Optional
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Іноді програмістам дуже незручно працювати з посиланнями на null. Приміром, ви порівнюєте два рядки. Якщо обидві змінні не null, тоді можна просто викликати s1.equals(s2), і все працюватиме. А от якщо s1 може бути null, доведеться писати код, який враховує цю ситуацію, щоб не виник NullPointerException.
21
СТАНОМ НА 01.02.2023
Клас Optional
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Метод Optional<T> findFirst()
Метод findFirst() просто повертає перший елемент із потоку, і все — на цьому його робота завершується.
Цікаво, що метод повертає не об'єкт типу T, а обгортку над ним — об'єкт типу Optional<T>. Це зроблено для того, щоб ніколи не стикатися із ситуацією, коли метод не знаходить об'єкт і повертає null.
22
СТАНОМ НА 01.02.2023
Клас Optional
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Метод Optional<T> findAny()
Метод findAny() повертає будь-який елемент з потоку й на цьому завершується. Цей метод — аналог методу findFirst(), тільки для потоків, які обробляються паралельно.
Під час паралельної обробки потоків може трапитися така ситуація, що в якійсь частині потоку елемент уже знайдено, але поки ще не зрозуміло, буде він першим чи ні.
Метод Optional<T> min(Comparator<T>)
Метод min() порівнює всі елементи потоку за допомогою об'єкта comparator і повертає мінімальний елемент. Найзручніше задати об'єкт-компаратор за допомогою лямбда-функції.
23
СТАНОМ НА 01.02.2023
Клас Optional
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Метод Optional<T> max(Comparator<T>)
Метод max() порівнює всі елементи потоку за допомогою об'єкта comparator і повертає максимальний елемент. Найзручніше задати об'єкт-компаратор за допомогою лямбда-функції.
24
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Annotations
25
СТАНОМ НА 01.02.2023
Анотації (@interface) в java
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Анотації в Java – це спеціальні мета-дані, які додаються до коду (класів, методів, змінних, параметрів тощо) та використовуються під час компіляції або виконання програми.
Вони не впливають на саму логіку виконання, але можуть бути корисними для автоматичної генерації коду, конфігурації програмних компонентів і перевірки правильності написаного коду.
Наприклад, @Override допомагає перевірити, чи метод справді перевизначає метод із батьківського класу.
Анотація @Deprecated вказує, що метод або клас більше не рекомендовано використовувати, що допомагає розробникам уникати застарілих рішень.
У Spring анотації (@Service, @Component, @Autowired) використовуються для автоматичного налаштування об’єктів.
У JUnit анотації (@Test) визначають тестові методи, що значно спрощує процес тестування.
Приклади використання анотацій
26
СТАНОМ НА 01.02.2023
Анотації (@interface) в java
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Lombok – бібліотека, яка дозволяє значно спростити код, автоматично генеруючи гетери, сетери, конструктори, toString(), equals(), hashCode() та інші методи за допомогою анотацій.
27
СТАНОМ НА 01.02.2023
Анотації (@interface) в java
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Основні анотації Lombok
28
СТАНОМ НА 01.02.2023
Анотації (@interface) в java
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
29
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Spring framework
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Spring framework
Налаштування Spring-проєкту
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
32
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
JPA. Hibernate
33
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
JPA. Hibernate
34
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
JPA. Hibernate
35
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
JPA. Hibernate
36
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
JPA. Hibernate
37
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
application.properties
38
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
application.properties
39
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
application.properties
40
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
application.properties
41
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Тестування REST-контролерів черезPostman
42
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
43
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
44
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
45
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
46
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
47
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
48
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
49
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
Додавання нового студента. Метод POST
Анотація @RequestBody в Spring використовується для прив'язки тіла HTTP-запиту до параметра методу контролера. Вона зазвичай застосовується у REST-контролерах для отримання JSON або XML-даних, які надсилаються з клієнтської частини (наприклад, з фронтенду або через Postman).
50
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
51
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
Оновлення даних студента. Метод PUT
Анотація @PathVariable в Spring використовується для отримання значень змінних прямо з URL-шляху. Це дуже зручно при створенні RESTful сервісів, де параметри передаються в самому шляху запиту.
52
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
53
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
Отримання студента по id. Метод GET
54
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
55
СТАНОМ НА 01.02.2023
THE STATE EMERGENCY SERVICEOF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
STATE SERVICE OF EMERGENCY SITUATIONS IN UKRAINE
THE STATE EMERGENCY SERVICE OF UKRAINE
LVIV STATE UNIVERSITY OF LIFE SAFETY
Postman
56