AI Academy
Promoción
CodeGym University
Aprendizaje
Cursos
Tareas
Encuestas & Cuestionarios
Juegos
Ayuda
Horario
Comunidad
Usuarios
Foro
Chat
Artículos
Historias de éxito
Actividad
Reseñas
Suscripciones
Tema claro
Lecciones
Reseñas
Sobre nosotros
Comenzar
Comenzar a aprender
Comienza a aprender ahora
Mi progreso
Cursos
Universidad
Mapa de misiones
Lecciones
Spring in Production
Spring Test
Nivel 18
Actualización perdida en CRUD
Hibernate deep-dive
Nivel 18,
Lección 0
En esta lección analizamos cómo un simple
read
→
modify
→
write
en Spring y Hibernate puede silenciosamente sobrescribir cambios de otros, por qué una transacción no protege contra escrituras paralelas y cómo reconocer
lost update
en la línea de tiempo.
Optimistic locking y
@Version
Hibernate deep-dive
Nivel 18,
Lección 1
Analizamos el bloqueo optimista en Hibernate: cómo
@Version
ayuda a no perder actualizaciones en trabajo paralelo, cómo se ve el
UPDATE
versionado, qué hay que agregar en Flyway y dónde es especialmente útil este mecanismo.
Conflicto optimista:
flush
y
commit
Hibernate deep-dive
Nivel 18,
Lección 2
En esta lección analizamos por qué el conflicto optimista no se manifiesta en el momento de modificar el objeto, sino en el momento de sincronización con la base de datos. Mostramos cómo
flush
y
commit
controlan el momento de la comprobación de la versión y cómo esto afecta al manejo de errores en la capa de servicio.
Conflicto optimista: resultado y reintento
Hibernate deep-dive
Nivel 18,
Lección 3
Analizamos cómo Spring e Hibernate reaccionan ante un conflicto optimista, cómo estructurar el resultado de una operación a nivel de servicio y cuándo es apropiado un reintento limitado.
InventoryItem: conflicto y registro SQL
Hibernate deep-dive
Nivel 18,
Lección 4
En esta lección analizamos, con InventoryItem como ejemplo, cómo reproducir un conflicto de optimistic locking, ver una versión obsoleta en el registro SQL y entender por qué Hibernate protege los datos de una sobrescritura silenciosa.
Please enable JavaScript to continue using this application.