Mi requisito es actualizar el registro de una tabla aunque el registro no esté sucio. Hibernate ignora por defecto la consulta de actualización si todas las columnas que se pasan son iguales. Pero no quiero eso. La razón es que tenemos algunos disparadores escritos en la inserción/actualización/eliminación de la base de datos, que necesita saber si alguien intenta actualizar algún registro. Este es un elemento muy crítico de la aplicación y lo quiero de esta manera.
Estoy navegando mucho sobre esto, pero encuentro sobre @DynamicUpdate , pero lo que quiero es lo contrario.
Cualquier ayuda sería realmente útil.
Si tiene un atributo de versión, es decir, anotado con @Version
, puede usar OPTIMISTIC_FORCE_INCREMENT
para cargar la entidad, lo que siempre provocará una escritura que incrementa la versión: https://docs.oracle.com/javaee/7/api/javax/persistence/ LockModeType.html#OPTIMISTIC_FORCE_INCREMENT
Debe usar algo como session.flush()
después de cada actualización para forzar las actualizaciones consecuentes y realizar un guardado "real" de una entidad dentro de la misma sesión/transacción. No puedo aconsejar más ya que no ha proporcionado ningún ejemplo de código.