Sobes.tech
Junior — Middle

Môžete uviesť hlavné argumenty používané pri deklarácii anotácie @Transactional?

sobes.tech AI

Odpoveď od AI

Poznámka @Transactional v jazyku Java (zvyčajne v Spring Framework) sa používa na správu transakcií. Hlavné argumenty, ktoré je možné špecifikovať pri deklarácii tejto anotácie:

  • propagation — určuje správanie transakcie pri volaní metódy, napríklad REQUIRED, REQUIRES_NEW.
  • isolation — úroveň izolácie transakcie, napríklad READ_COMMITTED, SERIALIZABLE.
  • timeout — čas v sekundách, po ktorom bude transakcia prerušená, ak sa nedokončí.
  • readOnly — vlajka, ktorá označuje, že transakcia je iba na čítanie (optimalizácia).
  • rollbackFor — zoznam výnimiek, pri ktorých má byť transakcia vrátená.
  • noRollbackFor — výnimky, pri ktorých sa rollback neuskutoční.

Príklad použitia:

@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.READ_COMMITTED, timeout = 30, readOnly = false)
public void updateData() {
    // obchodná logika
}