Junior — Middle
Explica scopul și principiul de funcționare al adnotării @Transactional în cadrul Spring Framework.
sobes.tech AI
Răspuns de la AI
Аннотация @Transactional в Spring Framework используется для управления транзакциями на уровне методов или классов. Она позволяет автоматически начать, зафиксировать (commit) или откатить (rollback) транзакцию при выполнении бизнес-логики.
Принцип работы:
- При вызове метода с
@TransactionalSpring открывает новую транзакцию или присоединяется к существующей. - Если метод выполняется успешно, транзакция фиксируется.
- Если возникает исключение (по умолчанию — unchecked), транзакция откатывается.
Это позволяет разработчикам не писать вручную код для управления транзакциями, обеспечивая атомарность операций с базой данных.
Пример:
@Service
public class UserService {
@Transactional
public void createUser(User user) {
userRepository.save(user);
// другие операции, которые должны быть в одной транзакции
}
}