Съдържание:

Каква е политиката за връщане назад по подразбиране в управлението на транзакциите?
Каква е политиката за връщане назад по подразбиране в управлението на транзакциите?

Видео: Каква е политиката за връщане назад по подразбиране в управлението на транзакциите?

Видео: Каква е политиката за връщане назад по подразбиране в управлението на транзакциите?
Видео: DCDiag.exe: Understanding Active Directory Troubleshooting 2024, Март
Anonim

В своята по подразбиране конфигурация, Spring Framework транзакция кодът на инфраструктурата отбелязва само a транзакция за връщане назад в случай на изпълнение, непроверени изключения; тоест, когато изхвърленото изключение е екземпляр или подклас на RuntimeException. (Грешките също ще - от по подразбиране - резултат а връщане назад ).

Също така попитах какво е управление на транзакции?

Реклами. База данни транзакция е последователност от действия, които се третират като една единица работа. Тези действия трябва или да завършат изцяло, или да нямат никакъв ефект. Управление на транзакциите е важна част от ориентираното към RDBMS корпоративно приложение за осигуряване на целостта и последователността на данните.

Второ, как се справяте с връщането назад в JPA? Не забравяйте, че запазването на обект не изпълнява незабавно заявка за вмъкване. Той просто казва на Hibernate, че преди края на транзакцията ще трябва да се изпълни вмъкване. Да се връщане назад транзакция, която можете да използвате анотация @Transaction. Можете да го приложите на ниво метод или ниво на клас.

Впоследствие въпросът е какво прави @transactional анотацията?

В транзакционна анотация самата дефинира обхвата на една база данни транзакция . Контекстът на постоянство е просто обект на синхронизатор, който проследява състоянието на ограничен набор от Java обекти и гарантира, че промените в тези обекти са в крайна сметка се запази обратно в базата данни.

Как да върна обратно транзакция в Java?

Пример за транзакция Commit/Rollback

  1. Заредете JDBC драйвера, като използвате метода на API forName(String className) на класа.
  2. Създайте връзка с базата данни.
  3. Деактивирайте автоматичното записване с API метода setAutoCommit(boolean autoCommit) на връзката.
  4. Правете SQL актуализации и зареждайте всяка една от тях с API метода commit() на връзката.

Препоръчано: