Необходимость API транзакций в Java

Прежде всего, мой вопрос: зачем нужен API транзакций в Java? Дайте мне практический пример?

Что означает транзакция, управляемая контейнером, и транзакция, управляемая бином?

И разница между декларативной транзакцией и программной транзакцией?

пожалуйста, помогите мне

заранее спасибо

2 ответа

Декларативная транзакция: вы помещаете декларативную транзакцию в декларацию метода. поэтому вам не нужно реализовывать транзакцию вручную. Здесь я приведу вам пример:

// declarative
@Transcational
public void Transfer (Account from, Account destination, double amount) {
//do your logic here
}

// programmatic
public void Transfer (Account from, Account destination, double amount) {
    var session = sessionFactory.openSession();
    var tx = session.BeginTransaction();

    try {
        //do you logic here
        tx.Commit();
    } catch {
        tx.Rolback();
    }
}

Container managed transaction а также bean managed transactionЯ полагаю, вы имеете в виду Enterprise JavaBean? Насколько я понимаю, управляемая контейнером транзакция не потребует от разработчика явного написания кодов или конструкций для управления транзакцией, аналогично автоматическим фиксациям для базы данных.

Другие вопросы по тегам