jueves, 2 de junio de 2016

Gestión de transacciones declarativas en Spring.

Es muy interesante poder definir de forma declarativa en el código, el ámbito de nuestras transacciones. 
Hay 7 tipos de propagación de las transacciones en Spring:

  • PROPAGATION_REQUIRED - Crea una nueva transacción si no existe. Si existe participa en ella. PROPAGATION_SUPPORTS - No crea una nueva transacción si no existe. Si existe participa en ella. 
  • PROPAGATION_MANDATORY - Si existe transacción participa en ella. Si no existe lanza una excepción. 
  • PROPAGATION_REQUIRES_NEW - Crea una nueva transacción. Si existe una transacción actual la suspende. 
  • PROPAGATION_NOT_SUPPORTED - No participa en la transacción actual y se ejecuta de forma no transaccional. 
  • PROPAGATION_NEVER - Si existe una transacción actualmente lanza una excepción. PROPAGATION_NESTED - Ejecuta una transacción anidada si existe una transacción actualmente. El caso más habitual es 
  • PROPAGATION_REQUIRED. http://www.mkyong.com/spring/spring-aop-transaction-management-in-hibernate/

No hay comentarios: