Suplemento 6: implementación de transacciones SpringBoot

Enlace de referencia: https://juejin.im/post/6844904111050063879

Aquí hay un resumen de las ideas de implementación de transacciones en Spring. Spring se basa principalmente en TransactionInterceptor para interceptar el cuerpo del método de ejecución, determinar si abrir la transacción y luego ejecutar el cuerpo del método de transacción, capturar la excepción en el cuerpo del método y luego determinar si es necesario revertirlo, si es necesario revertirlo. Delegue el TransactionManager real, como el DataSourceTransactionManager en JDBC, para realizar la lógica de reversión. Lo mismo ocurre con la realización de una transacción.

 

Siete comportamientos de propagación de transacciones se definen en Spring:

Tipos de

Descripción

PROPAGATION_REQUIRED

Si no hay ninguna transacción actualmente, cree una nueva transacción, si ya existe una transacción, únase a ella. Esta es la opción más común.

PROPAGATION_SUPPORTS

Admite la transacción actual, si no hay ninguna transacción actualmente, se ejecutará de manera no transaccional.

PROPAGATION_MANDATORY

Utilice la transacción actual, si no hay ninguna transacción actualmente, lance una excepción.

PROPAGATION_REQUIRES_NEW

Cree una nueva transacción. Si existe una transacción, suspenda la transacción actual.

PROPAGATION_NOT_SUPPORTED

Realizar operaciones de manera no transaccional, si hay una transacción en curso, la transacción en curso se suspende.

PROPAGATION_NEVER

Ejecutar de manera no transaccional. Si hay una transacción actualmente, se lanza una excepción.

PROPAGATION_NESTED

Si una transacción existe actualmente, se ejecuta dentro de una transacción anidada. Si no hay ninguna transacción actualmente, realice una operación similar a PROPAGATION_REQUIRED.

 

Resumen: La ejecución en modo no transaccional en realidad está configurada como confirmación automática. Si hay varias operaciones en un método, cada operación se completará en una transacción diferente y no se garantizará su atomicidad.

https://blog.csdn.net/yanyuan904/article/details/80696159

 

Descripción general del mecanismo de gestión de transacciones de Spring
https://blog.csdn.net/justloveyou_/article/details/73733278

 

Supongo que te gusta

Origin blog.csdn.net/qq_42198024/article/details/108333960
Recomendado
Clasificación