Sobes.tech
Senior
103

Mit nyújt az @Transactional annotáció és milyen attribútumai vannak?

Cégeket kérdeztek
Позитив Технолоджис

Válasz az MI-től

sobes.tech MI

A @Transactional megjegyzés Java-ban az adatbázis tranzakciók kezelésére szolgál módszerek vagy osztályok szintjén. Biztosítja, hogy a tranzakcióban lévő összes művelet atomikusan legyen végrehajtva: vagy mind sikeres, vagy hiba esetén visszagörgetés történik.

A @Transactional fő attribútumai:

  • propagation — meghatározza a tranzakció viselkedését, amikor más tranzakciós kontextusból hívják (pl. REQUIRED, REQUIRES_NEW).
  • isolation — a tranzakció elszigeteltségi szintje (READ_COMMITTED, SERIALIZABLE stb.), befolyásolja az adatok láthatóságát.
  • timeout — a tranzakció befejezéséig várakozási idő, amit követően megszakad.
  • readOnly — jelzi, hogy a tranzakció csak olvasási célt szolgál, ez optimalizálhatja az adatbázissal való munkát.
  • rollbackFor / noRollbackFor — kivétel osztályok, amelyek esetén a tranzakció visszagörgetésre kerül vagy sem.

Példa:

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