es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Podemos cerrar la conexión de Oracle Forms desde una aplicación Java?

Estamos modernizando los formularios heredados de Oracle a microservicios (Spring Boot / REST API’s).

En algunas inserciones de tabla, los desencadenadores están generando errores posteriores a la inserción, y el equipo actual sugiere usar


begin
HST9I.qms_transaction_mgt.open_transaction (p_trans_opened_by => ‘FORM’);//(código de desencadenador)
nuestras actualizaciones a las tablas aquí
HST9I.qms_transaction_mgt.close_transaction (p_trans_opened_by => ‘FORM’);
end;//código de desencadenador

Pero como tenemos las conexiones y transacciones administradas por Spring, ¿cómo podemos cerrar / abrir las conexiones como se indica arriba?
¿Alguna sugerencia sobre cómo abordar esto?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Como un experto en TI con especialización en Oracle, Spring-Boot, Hibernate y Spring-Data, mi sugerencia para modernizar los formularios heredados de Oracle a microservicios usando Spring Boot/REST API’s sería administrar las conexiones y transacciones de la base de datos utilizando el soporte incorporado de Spring para lo mismo.

    El enfoque sugerido por el equipo actual utiliza disparadores para abrir y cerrar transacciones, lo que puede no ser compatible con la gestión de conexiones y transacciones proporcionada por Spring. En su lugar, deberíamos aprovechar las características de gestión de transacciones de Spring para manejar la apertura y cierre de transacciones automáticamente.

    Podemos hacer uso de la característica de gestión de transacciones declarativa de Spring mediante la anotación de nuestros métodos de servicio con la anotación “@Transactional”. Esto permitirá a Spring administrar las transacciones y liberar las conexiones de la base de datos tan pronto como se complete la transacción.

    Además, podemos utilizar JdbcTemplate o HibernateTemplate de Spring para ejecutar nuestras declaraciones SQL dentro del límite de la transacción. Estas plantillas también brindan soporte para la gestión de excepciones y la repetición de transacciones en caso de fallas.

    En conclusión, podemos administrar transacciones y conexiones de una manera más eficiente y confiable utilizando el soporte incorporado de Spring para lo mismo en lugar de depender de los disparadores.

Comments are closed.