Встречается на собеседованиях • сегодня
Что нужно сделать, для того чтобы заработала аннотация @Transactional
Для работы аннотации @Transactional необходимо:
- Добавить зависимость Spring Transaction (если не Spring Boot)
- Включить управление транзакциями через
@EnableTransactionManagementв конфигурации - Использовать Spring Data JPA или другой транзакционный datasource
- Аннотировать метод или класс (public методы будут транзакционными)
Пример:
java
@Configuration
@EnableTransactionManagement
public class AppConfig {
// DataSource, EntityManagerFactory etc.
}
@Service
public class UserService {
@Transactional
public void updateUser(User user) {
// Будет выполняться в транзакции
}
}Важно:
- Метод должен быть public (иначе проксирование не сработает)
- Вызов из того же класса не будет транзакционным (проблема self-invocation)
- По умолчанию транзакция создается при входе в метод и коммитится при успешном завершении

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы