Sobes.tech
Junior — Middle

Hoe hebt u de @Transactional-annotatie in Spring gebruikt en welke ervaring hebt u ermee?

sobes.tech AI

Antwoord van AI

Аннотация @Transactional в Spring используется для управления транзакциями на уровне методов или классов. Я применял её, чтобы обеспечить атомарность операций с базой данных — например, при сохранении нескольких связанных сущностей. Если в методе с @Transactional происходит исключение, все изменения откатываются, что предотвращает частичное обновление данных.

Пример использования:

@Service
public class UserService {

    @Transactional
    public void createUserAndProfile(User user, Profile profile) {
        userRepository.save(user);
        profileRepository.save(profile);
        // Если здесь возникнет исключение, обе операции откатятся
    }
}

Также важно учитывать, что @Transactional работает корректно только при вызове методов через прокси Spring, то есть вызов метода должен идти извне класса.