gestión rollback
This commit is contained in:
parent
91aff80cec
commit
63628feb7b
@ -2,7 +2,6 @@ package org.lapaloma.aadd.cine.dao.hbnt;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.hibernate.HibernateException;
|
||||
import org.hibernate.Session;
|
||||
import org.hibernate.Transaction;
|
||||
import org.hibernate.query.MutationQuery;
|
||||
@ -56,26 +55,33 @@ public class ActorDaoHibernate implements IOperacionesDAOEntidad<Actor, Integer>
|
||||
@Override
|
||||
public void crearEntidad(Actor entidad) {
|
||||
Transaction transaccion = null;
|
||||
|
||||
// try con recursos "cerrables": Connection, Statement
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
Session sesion = null;
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
sesion.persist(entidad);
|
||||
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
} catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actualizarEntidad(Actor entidad) {
|
||||
Transaction transaccion = null;
|
||||
Session sesion = null;
|
||||
|
||||
// try con recursos "cerrables": Session
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
if (!sesion.contains(entidad))
|
||||
@ -83,17 +89,26 @@ public class ActorDaoHibernate implements IOperacionesDAOEntidad<Actor, Integer>
|
||||
|
||||
transaccion.commit();
|
||||
} catch (Exception e) {
|
||||
transaccion.rollback();
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void borrarEntidadPorClave(Integer clave) {
|
||||
Transaction transaccion = null;
|
||||
Session sesion = null;
|
||||
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
// Borrado de Repartos de un Actor
|
||||
String sentenciaBorradoRepartosHQL = "DELETE FROM Reparto r WHERE r.actor.identificador = :identificador";
|
||||
MutationQuery senteciaBorradoRepartos = sesion.createMutationQuery(sentenciaBorradoRepartosHQL);
|
||||
@ -107,9 +122,15 @@ public class ActorDaoHibernate implements IOperacionesDAOEntidad<Actor, Integer>
|
||||
senteciaBorradoActor.executeUpdate();
|
||||
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
} catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -2,7 +2,6 @@ package org.lapaloma.aadd.cine.dao.hbnt;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.hibernate.HibernateException;
|
||||
import org.hibernate.Session;
|
||||
import org.hibernate.Transaction;
|
||||
import org.hibernate.query.MutationQuery;
|
||||
@ -56,45 +55,63 @@ public class ContinenteDaoHibernate implements IOperacionesDAOEntidad<Continente
|
||||
@Override
|
||||
public void crearEntidad(Continente entidad) {
|
||||
Transaction transaccion = null;
|
||||
|
||||
// try con recursos "cerrables": Connection, Statement
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
Session sesion = null;
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
sesion.persist(entidad);
|
||||
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
} catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actualizarEntidad(Continente entidad) {
|
||||
Transaction transaccion = null;
|
||||
Session sesion = null;
|
||||
|
||||
// try con recursos "cerrables": Session
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
|
||||
if (!sesion.contains(entidad))
|
||||
sesion.merge(entidad);
|
||||
|
||||
transaccion.commit();
|
||||
} catch (Exception e) {
|
||||
transaccion.rollback();
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void borrarEntidadPorClave(String clave) {
|
||||
Transaction transaccion = null;
|
||||
Session sesion = null;
|
||||
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
|
||||
// Borrado de repartos en los que la localización de la película es en un país del continente a borrar
|
||||
// Borrado de repartos en los que el país de nacimiento del actor es en un país del continente a borrar
|
||||
// Borrado de repartos en los que el país de nacimiento del director de la película es en un país del continente a borrar
|
||||
@ -141,10 +158,15 @@ public class ContinenteDaoHibernate implements IOperacionesDAOEntidad<Continente
|
||||
sentenciaBorradoContinente.executeUpdate();
|
||||
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
} catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -2,7 +2,6 @@ package org.lapaloma.aadd.cine.dao.hbnt;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.hibernate.HibernateException;
|
||||
import org.hibernate.Session;
|
||||
import org.hibernate.Transaction;
|
||||
import org.hibernate.query.MutationQuery;
|
||||
@ -56,45 +55,63 @@ public class DirectorDaoHibernate implements IOperacionesDAOEntidad<Director, In
|
||||
@Override
|
||||
public void crearEntidad(Director entidad) {
|
||||
Transaction transaccion = null;
|
||||
|
||||
// try con recursos "cerrables": Connection, Statement
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
Session sesion = null;
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
sesion.persist(entidad);
|
||||
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
} catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actualizarEntidad(Director entidad) {
|
||||
Transaction transaccion = null;
|
||||
Session sesion = null;
|
||||
|
||||
// try con recursos "cerrables": Session
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
|
||||
if (!sesion.contains(entidad))
|
||||
sesion.merge(entidad);
|
||||
|
||||
transaccion.commit();
|
||||
} catch (Exception e) {
|
||||
transaccion.rollback();
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void borrarEntidadPorClave(Integer clave) {
|
||||
Transaction transaccion = null;
|
||||
Session sesion = null;
|
||||
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
//Borrado de Repartos de películas un director
|
||||
|
||||
// Borrado de Repartos de películas un director
|
||||
String sentenciaBorradoRepartosHQL = "DELETE FROM Reparto r WHERE r.pelicula.director.identificador = :identificador";
|
||||
MutationQuery senteciaBorradoRepartos = sesion.createMutationQuery(sentenciaBorradoRepartosHQL);
|
||||
senteciaBorradoRepartos.setParameter("identificador", clave);
|
||||
@ -114,9 +131,15 @@ public class DirectorDaoHibernate implements IOperacionesDAOEntidad<Director, In
|
||||
* Pais continente = sesion.find(Pais.class, clave); sesion.remove(continente);
|
||||
*/
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
} catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -2,7 +2,6 @@ package org.lapaloma.aadd.cine.dao.hbnt;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.hibernate.HibernateException;
|
||||
import org.hibernate.Session;
|
||||
import org.hibernate.Transaction;
|
||||
import org.hibernate.query.MutationQuery;
|
||||
@ -57,44 +56,60 @@ public class PaisDaoHibernate implements IOperacionesDAOEntidad<Pais, Integer> {
|
||||
@Override
|
||||
public void crearEntidad(Pais entidad) {
|
||||
Transaction transaccion = null;
|
||||
Session sesion = null;
|
||||
|
||||
// try con recursos "cerrables": Connection, Statement
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
sesion.persist(entidad);
|
||||
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
} catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actualizarEntidad(Pais entidad) {
|
||||
Transaction transaccion = null;
|
||||
|
||||
// try con recursos "cerrables": Session
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
Session sesion = null;
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
if (!sesion.contains(entidad))
|
||||
sesion.merge(entidad);
|
||||
|
||||
transaccion.commit();
|
||||
} catch (Exception e) {
|
||||
transaccion.rollback();
|
||||
}catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void borrarEntidadPorClave(Integer clave) {
|
||||
Transaction transaccion = null;
|
||||
Session sesion = null;
|
||||
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
// Borrado de repartos en los que la localización de la película es en el país a borrar
|
||||
// Borrado de repartos en los que el país de nacimiento del actor es en el país a borrar
|
||||
// Borrado de repartos en los que el país de nacimiento del director de la película es en el país a borrar
|
||||
@ -137,9 +152,15 @@ public class PaisDaoHibernate implements IOperacionesDAOEntidad<Pais, Integer> {
|
||||
senteciaBorradoPaises.executeUpdate();
|
||||
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
}catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,7 +2,6 @@ package org.lapaloma.aadd.cine.dao.hbnt;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.hibernate.HibernateException;
|
||||
import org.hibernate.Session;
|
||||
import org.hibernate.Transaction;
|
||||
import org.hibernate.query.MutationQuery;
|
||||
@ -56,26 +55,33 @@ public class PeliculaDaoHibernate implements IOperacionesDAOEntidad<Pelicula, In
|
||||
@Override
|
||||
public void crearEntidad(Pelicula entidad) {
|
||||
Transaction transaccion = null;
|
||||
|
||||
// try con recursos "cerrables": Connection, Statement
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
Session sesion = null;
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
sesion.persist(entidad);
|
||||
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
} catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actualizarEntidad(Pelicula entidad) {
|
||||
Transaction transaccion = null;
|
||||
Session sesion = null;
|
||||
|
||||
// try con recursos "cerrables": Session
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
if (!sesion.contains(entidad))
|
||||
@ -83,17 +89,25 @@ public class PeliculaDaoHibernate implements IOperacionesDAOEntidad<Pelicula, In
|
||||
|
||||
transaccion.commit();
|
||||
} catch (Exception e) {
|
||||
transaccion.rollback();
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void borrarEntidadPorClave(Integer clave) {
|
||||
Transaction transaccion = null;
|
||||
|
||||
try (Session sesion = GestorSesionesHibernate.getSession();) {
|
||||
Session sesion = null;
|
||||
try {
|
||||
sesion = GestorSesionesHibernate.getSession();
|
||||
transaccion = sesion.beginTransaction();
|
||||
|
||||
// Borrado de Repartos de una Película
|
||||
String sentenciaBorradoRepartosHQL = "DELETE FROM Reparto r WHERE r.pelicula.identificador = :identificador";
|
||||
MutationQuery senteciaBorradoRepartos = sesion.createMutationQuery(sentenciaBorradoRepartosHQL);
|
||||
@ -107,9 +121,15 @@ public class PeliculaDaoHibernate implements IOperacionesDAOEntidad<Pelicula, In
|
||||
senteciaBorradoPeliculas.executeUpdate();
|
||||
|
||||
transaccion.commit();
|
||||
} catch (HibernateException e) {
|
||||
transaccion.rollback();
|
||||
} catch (Exception e) {
|
||||
if (transaccion != null && transaccion.isActive()) {
|
||||
transaccion.rollback();
|
||||
}
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (sesion != null) {
|
||||
sesion.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user