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.

Tag: SPRING-TRANSACTIONS

Java Spring @Transactional previene la concurrencia.

¿Cómo puedo evitar la concurrencia en las transacciones de Spring? La situación es que se realizan dos solicitudes en paralelo al método siguiente: @Transactional public save() { Optional<example> result = repository.findById(1); if(!result.isPresent()) { Example example = new Example(); example.setParam1(1); example.setParam2(1); example.setParam3(1); example.setParam4(1); example.setParam5(1); example.setParam6(1); example.setParam7(1); example.setParam8(1); repository.save(example); } } Por . . . Read more

Obteniendo un ORA-00900 (Sentencia SQL inválida) después de mover @Transactionnal de Repositorio a servicio.

Estoy obteniendo un java.sql.SQLSyntaxErrorException: ORA-00900: Declaración SQL no válida después de mover las anotaciones @Transactional y @Modifying desde los métodos del repository a los métodos del servicio: @Repository("someRepository") public interface SomeRepository extends CrudRepository<SomeEntity, String>{ //¡Mi código funciona si las siguientes dos líneas están descomentadas! //@Transactional //@Modifying @Query(nativeQuery = true, value . . . Read more

¿Comienza AfterReturningAdvice después o antes de que se cierre la Transacción?

Estoy usando BeanPostProcessor que ejecuta algún código después de que se completen mis métodos de Service. Pero mi Service también está marcado con @Transactional. ¿Este “desencadenador” se ejecuta después o antes del final de la Transacción en esos métodos? @Component public class MethodBeanPostProcessor implements BeanPostProcessor {    @Override    public Object postProcessAfterInitialization(Object . . . Read more

Quiero poner un bloqueo de escritura en una fila de base de datos (PostgreSQL), para evitar que otra transacción (de cualquiera de los nodos) modifique la fila.

Quiero bloquear la escritura en una fila de una base de datos para no permitir que otra transacción la modifique (desde cualquiera de las pods en un entorno con clúster). Estoy teniendo problemas en un entorno con clúster, donde tenemos 3 pods de aplicación. Intenté usar @Lock(LockModeType.PESSIMISTIC_WRITE) pero no está . . . Read more