Sobes.tech
Senior

Nimetage @Transactional annotatsiooni parameetrid

sobes.tech AI

Vastus AI-lt

Spring'is @Transactional märgistus kasutatakse tehingute haldamiseks ja sellel on mitu peamist parameetrit:

  • propagation — määrab tehingu käitumise meetodi kutsumisel, näiteks REQUIRED, REQUIRES_NEW, SUPPORTS ja teised.
  • isolation — tehingu isoleerimistasand, näiteks READ_COMMITTED, SERIALIZABLE.
  • timeout — maksimaalne tehingu täitmise aeg sekundites.
  • readOnly — näitab, et tehing on ainult lugemiseks, mis võib optimeerida andmebaasiga töötamist.
  • rollbackFor ja noRollbackFor — erandite klassid, mille puhul tehing peab või ei tohi tagasi pöörduda.

Kasutusnäide:

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