Sobes.tech
Junior — Middle

Kas saaksite loetleda peamised argumendid, mida kasutatakse @Transactional annotatsiooni deklarimisel?

sobes.tech AI

Vastus AI-lt

Märkus @Transactional Java-s (tavaliselt Spring Framework-s) kasutatakse transaktsioonide haldamiseks. Peamised argumendid, mida saab selle annotatsiooni deklaratsioonil määrata:

  • propagation — määrab transaktsiooni käitumise meetodi kutsumisel, näiteks REQUIRED, REQUIRES_NEW.
  • isolation — transaktsiooni isolatsiooni tase, näiteks READ_COMMITTED, SERIALIZABLE.
  • timeout — aeg sekundites, mille jooksul transaktsioon katkestatakse, kui see ei lõpe.
  • readOnly — lipp, mis näitab, et transaktsioon on ainult lugemiseks (optimeerimine).
  • rollbackFor — nimekiri eranditest, mille korral transaktsioon tuleb tagasi pöörata.
  • noRollbackFor — erandid, mille korral tagasi pööramine ei toimu.

Kasutusnäide:

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