Запитання для самоконтролю 2.4
🏗️ Основи та архітектура
- Що таке ORM і яку проблему вирішує ця технологія?
- Яка роль Hibernate у Spring Boot додатку?
- У чому різниця між JPA та Spring Data JPA?
- Які основні залежності (dependencies) потрібно додати у
pom.xmlдля роботи з БД? - Навіщо потрібен файл
application.properties(абоyml) при роботі з базою?
📝 Сутності (Entities)
- Які анотації є обов'язковими для створення Entity-класу?
- Чим відрізняється стратегія генерації ID
IDENTITYвідSEQUENCE? - Для чого використовується анотація @Column та її параметри
nullableіunique? - Що станеться, якщо позначити поле анотацією @Transient?
🤝 Зв'язки (Relationships)
- Як реалізувати зв'язок One-to-Many (один до багатьох)? Які анотації потрібні з обох сторін?
- У чому різниця між FetchType.LAZY та FetchType.EAGER? Який тип кращий за замовчуванням?
- Що таке MappedBy і на якій стороні зв'язку він вказується?
- Як працює CascadeType.REMOVE?
🔍 Репозиторії та запити
- Які базові інтерфейси надає Spring Data JPA (наприклад,
JpaRepository,CrudRepository)? - Як працює механізм Query Methods (наприклад,
findByStatus)? - Коли варто використовувати анотацію @Query, а не стандартні методи?
- Чим JPQL відрізняється від звичайного SQL (Native Query)?
- Як реалізувати пагінацію (Pagination) за допомогою Spring Data?
⚡ Транзакції та життєвий цикл
- Що робить анотація @Transactional?
- Що таке Dirty Checking у Hibernate?
- Які стани може мати сутність (New, Managed, Detached, Removed)?
- Навіщо потрібні інструменти міграції (Flyway або Liquibase) у реальних проєктах?
Остання зміна: середа 20 травня 2026 12:13 PM