Tengo algunas preguntas relacionadas con las conexiones y las transacciones de primavera.¿Una conexión en la transacción de primavera?
hace uso de resorte de la misma instancia de conexión cuando se ejecutan múltiples métodos que realizan DML & operaciones DDL en una transacción (nivel de propagación necesarios)? He leído que mantiene la misma conexión, pero no sé por qué y cómo lo hace técnicamente. Al explicar cómo se proporcionan algunos consejos en el código fuente del muelle, sería útil.
Usando Spring Declarative Transactions si utilizo Serializable como el nivel de aislamiento, ¿me aseguraría que siempre se usa una conexión mientras realizo operaciones de base de datos en ese método o en cualquier otro método llamado desde el método transaccional original?
¿Hay algún punto que deba tener en cuenta al trabajar con Spring Transactions teniendo en cuenta este tema?
Cualquier idea/ayuda sobre este tema sería apreciada. Gracias.
Actualización 1 - Disculpe por error que he escrito un nivel de propagación serializable en lugar de un nivel de aislamiento. Corregido.
¿Puede explicar los puntos siguientes? 1. "Dado que para la mayoría de los recursos transaccionales no tiene sentido tener una transacción que se propague a través de múltiples conexiones". ¿A qué recursos transaccionales se refiere? 2. ¿Cómo se gestiona la primavera para obtener la misma conexión para todas las operaciones de DB realizadas en una transacción? (Si puede señalar algún código de primavera que puedo echarle un vistazo, sería genial). –
En la pregunta por error agregué nivel de propagación serializable en lugar de nivel de aislamiento. Corregido. –
@Amit: recursos transaccionales son recursos que proporcionan un comportamiento transaccional. Básicamente, son las bases de datos y las colas de mensajes. – axtavt