Medio Ambiente: Primavera 3, gestión de transacciones con clientes, transacciones JDBCCómo llamar a un método de reversión personalizado en Spring Transaction Management?
que acabo de leer la documentación de la primavera en el uso de la plantilla de transacción para manejar la gestión de transacciones. Parecía demasiado complejo por lo que quiero preguntar:
La mayoría de mis transacciones son JDBC relacionado, lo que significa que acaba de declarar una @Transactional
en mi servicio. Pero ahora, Estoy realizando una llamada de servicio REST a otro sitio que necesita deshacerse si cualquiera de las siguientes operaciones JDBC falla, en este caso proporcionaré el código de restitución.
a medida que avance en mi método, en mi transacción - Quiero guardar una referencia a la llamada de servicio REST (necesario para hacer retroceder esa acción), y sobre la excepción acabo quieren un método myCustomRollback()
llama cuales puede acceder al objeto previamente almacenado.
¿Por qué no simplemente proporciona un mapa en la transactionTemplate para almacenar cosas y definir un método de reversión personalizado en la anotación @Transactional
?
Así es como lo pienso, no estoy siguiendo la forma en que Spring piensa sobre esto. ¿Alguien puede ayudarme a cerrar la brecha entre lo que quiero y cómo lo logro de manera más eficiente en la primavera? Solo necesito hacer esto para algunas operaciones de casos especiales.