В тестах @Transactional автоматически делает rollback после каждого теста — БД остаётся чистой. @DataJpaTest добавляет @Transactional по умолчанию. Подводный камень: если тестируешь с RANDOM_PORT (реальный HTTP), @Transactional не работает — сервер и тест в разных потоках/транзакциях. Для интеграционных тестов с реальным HTTP: очистка БД в @AfterEach или @Sql-скрипты. @Commit/@Rollback(false) — оставить данные после теста (для дебага).
Как работает @Transactional в тестах?
Middle
257 просмотровAFK Offer AI
Что такое warm-up период JVM и как он влияет на производительность?