Cree un BaseRepository
Basicamente contiene los metodos para guardar, editar y eliminar que se repiten a travez de todos los modelos
This commit is contained in:
52
src/main/java/xyz/danielcortes/framework/BaseRepository.java
Normal file
52
src/main/java/xyz/danielcortes/framework/BaseRepository.java
Normal file
@@ -0,0 +1,52 @@
|
||||
package xyz.danielcortes.framework;
|
||||
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceException;
|
||||
|
||||
public abstract class BaseRepository<E> {
|
||||
|
||||
protected EntityManager em;
|
||||
|
||||
public BaseRepository() {
|
||||
this.em = PersistenceManager.getEntityManager();
|
||||
}
|
||||
|
||||
public void save(E entity) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.persist(entity);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
em.getTransaction().rollback();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void update(E entity) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.merge(entity);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
em.getTransaction().rollback();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void delete(E entity) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.remove(entity);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
em.getTransaction().rollback();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
}
|
||||
@@ -1,22 +1,14 @@
|
||||
package xyz.danielcortes.repository;
|
||||
|
||||
import java.util.List;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceException;
|
||||
import javax.persistence.TypedQuery;
|
||||
import javax.persistence.criteria.CriteriaBuilder;
|
||||
import javax.persistence.criteria.CriteriaQuery;
|
||||
import javax.persistence.criteria.Root;
|
||||
import xyz.danielcortes.framework.PersistenceManager;
|
||||
import xyz.danielcortes.framework.BaseRepository;
|
||||
import xyz.danielcortes.models.Autor;
|
||||
|
||||
public class AutorRepository {
|
||||
|
||||
private EntityManager em;
|
||||
|
||||
public AutorRepository() {
|
||||
this.em = PersistenceManager.getEntityManager();
|
||||
}
|
||||
public class AutorRepository extends BaseRepository<Autor> {
|
||||
|
||||
public List<Autor> getAll() {
|
||||
TypedQuery<Autor> query = em.createQuery("SELECT a FROM Autor a", Autor.class);
|
||||
@@ -36,41 +28,4 @@ public class AutorRepository {
|
||||
);
|
||||
return em.createQuery(query).getResultList();
|
||||
}
|
||||
|
||||
public void save(Autor autor) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.persist(autor);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void update(Autor autor) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.merge(autor);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void delete(Autor autor) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.remove(autor);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,22 +1,14 @@
|
||||
package xyz.danielcortes.repository;
|
||||
|
||||
import java.util.List;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceException;
|
||||
import javax.persistence.TypedQuery;
|
||||
import javax.persistence.criteria.CriteriaBuilder;
|
||||
import javax.persistence.criteria.CriteriaQuery;
|
||||
import javax.persistence.criteria.Root;
|
||||
import xyz.danielcortes.framework.PersistenceManager;
|
||||
import xyz.danielcortes.framework.BaseRepository;
|
||||
import xyz.danielcortes.models.Categoria;
|
||||
|
||||
public class CategoriaRepository {
|
||||
|
||||
private EntityManager em;
|
||||
|
||||
public CategoriaRepository() {
|
||||
this.em = PersistenceManager.getEntityManager();
|
||||
}
|
||||
public class CategoriaRepository extends BaseRepository<Categoria> {
|
||||
|
||||
public List<Categoria> getAll() {
|
||||
TypedQuery<Categoria> query = em.createQuery("SELECT c from Categoria c", Categoria.class);
|
||||
@@ -32,41 +24,4 @@ public class CategoriaRepository {
|
||||
);
|
||||
return em.createQuery(query).getResultList();
|
||||
}
|
||||
|
||||
public void save(Categoria categoria) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.persist(categoria);
|
||||
} catch (
|
||||
PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void update(Categoria categoria) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.merge(categoria);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void delete(Categoria categoria) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.remove(categoria);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,22 +1,14 @@
|
||||
package xyz.danielcortes.repository;
|
||||
|
||||
import java.util.List;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceException;
|
||||
import javax.persistence.TypedQuery;
|
||||
import javax.persistence.criteria.CriteriaBuilder;
|
||||
import javax.persistence.criteria.CriteriaQuery;
|
||||
import javax.persistence.criteria.Root;
|
||||
import xyz.danielcortes.framework.PersistenceManager;
|
||||
import xyz.danielcortes.framework.BaseRepository;
|
||||
import xyz.danielcortes.models.Editorial;
|
||||
|
||||
public class EditorialRepository {
|
||||
|
||||
private EntityManager em;
|
||||
|
||||
public EditorialRepository() {
|
||||
this.em = PersistenceManager.getEntityManager();
|
||||
}
|
||||
public class EditorialRepository extends BaseRepository<Editorial> {
|
||||
|
||||
public List<Editorial> getAll() {
|
||||
TypedQuery<Editorial> query = em.createQuery("SELECT e FROM Editorial e", Editorial.class);
|
||||
@@ -32,42 +24,4 @@ public class EditorialRepository {
|
||||
);
|
||||
return em.createQuery(query).getResultList();
|
||||
}
|
||||
|
||||
public void save(Editorial editorial) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.persist(editorial);
|
||||
} catch (
|
||||
PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void update(Editorial editorial) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try{
|
||||
em.merge(editorial);
|
||||
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void delete(Editorial editorial) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try{
|
||||
em.remove(editorial);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,23 +1,15 @@
|
||||
package xyz.danielcortes.repository;
|
||||
|
||||
import java.util.List;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceException;
|
||||
import javax.persistence.Query;
|
||||
import javax.persistence.TypedQuery;
|
||||
import javax.persistence.criteria.CriteriaBuilder;
|
||||
import javax.persistence.criteria.CriteriaQuery;
|
||||
import javax.persistence.criteria.Root;
|
||||
import xyz.danielcortes.framework.PersistenceManager;
|
||||
import xyz.danielcortes.framework.BaseRepository;
|
||||
import xyz.danielcortes.models.Ejemplar;
|
||||
|
||||
public class EjemplarRepository {
|
||||
|
||||
private EntityManager em;
|
||||
|
||||
public EjemplarRepository() {
|
||||
this.em = PersistenceManager.getEntityManager();
|
||||
}
|
||||
public class EjemplarRepository extends BaseRepository<Ejemplar> {
|
||||
|
||||
public List<Ejemplar> getAll() {
|
||||
TypedQuery<Ejemplar> query = em.createQuery("SELECT e FROM Ejemplar e", Ejemplar.class);
|
||||
@@ -37,36 +29,6 @@ public class EjemplarRepository {
|
||||
return em.createQuery(query).getResultList();
|
||||
}
|
||||
|
||||
public void save(Ejemplar ejemplar) {
|
||||
em.getTransaction().begin();
|
||||
try {
|
||||
em.persist(ejemplar);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void update(Ejemplar ejemplar) {
|
||||
em.getTransaction().begin();
|
||||
try {
|
||||
em.merge(ejemplar);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void delete(Ejemplar ejemplar) {
|
||||
em.getTransaction().begin();
|
||||
try {
|
||||
em.remove(ejemplar);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public boolean exists(String serie, Integer libro_id) {
|
||||
Query query = em.createQuery("SELECT count(e) FROM Ejemplar e WHERE serie = :serie and libro.id = :libro_id");
|
||||
query.setParameter("serie", serie);
|
||||
|
||||
@@ -1,19 +1,11 @@
|
||||
package xyz.danielcortes.repository;
|
||||
|
||||
import java.util.List;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceException;
|
||||
import javax.persistence.TypedQuery;
|
||||
import xyz.danielcortes.framework.PersistenceManager;
|
||||
import xyz.danielcortes.framework.BaseRepository;
|
||||
import xyz.danielcortes.models.Estado;
|
||||
|
||||
public class EstadoRepository {
|
||||
|
||||
private EntityManager em;
|
||||
|
||||
public EstadoRepository() {
|
||||
this.em = PersistenceManager.getEntityManager();
|
||||
}
|
||||
public class EstadoRepository extends BaseRepository<Estado> {
|
||||
|
||||
public List<Estado> getAll() {
|
||||
TypedQuery<Estado> query = em.createQuery("SELECT e FROM Estado e", Estado.class);
|
||||
@@ -25,42 +17,4 @@ public class EstadoRepository {
|
||||
query.setParameter("nombre", nombre);
|
||||
return query.getSingleResult();
|
||||
}
|
||||
|
||||
public void save(Estado estado) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.persist(estado);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void update(Estado estado) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.merge(estado);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void delete(Estado estado) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.remove(estado);
|
||||
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,22 +1,14 @@
|
||||
package xyz.danielcortes.repository;
|
||||
|
||||
import java.util.List;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceException;
|
||||
import javax.persistence.TypedQuery;
|
||||
import javax.persistence.criteria.CriteriaBuilder;
|
||||
import javax.persistence.criteria.CriteriaQuery;
|
||||
import javax.persistence.criteria.Root;
|
||||
import xyz.danielcortes.framework.PersistenceManager;
|
||||
import xyz.danielcortes.framework.BaseRepository;
|
||||
import xyz.danielcortes.models.Idioma;
|
||||
|
||||
public class IdiomaRepository {
|
||||
|
||||
private EntityManager em;
|
||||
|
||||
public IdiomaRepository() {
|
||||
this.em = PersistenceManager.getEntityManager();
|
||||
}
|
||||
public class IdiomaRepository extends BaseRepository<Idioma> {
|
||||
|
||||
public List<Idioma> getAll() {
|
||||
TypedQuery<Idioma> query = em.createQuery("SELECT i FROM Idioma i", Idioma.class);
|
||||
@@ -34,41 +26,4 @@ public class IdiomaRepository {
|
||||
);
|
||||
return em.createQuery(query).getResultList();
|
||||
}
|
||||
|
||||
public void save(Idioma idioma) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.persist(idioma);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void update(Idioma idioma) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.merge(idioma);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void delete(Idioma idioma) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.remove(idioma);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,22 +1,14 @@
|
||||
package xyz.danielcortes.repository;
|
||||
|
||||
import java.util.List;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceException;
|
||||
import javax.persistence.TypedQuery;
|
||||
import javax.persistence.criteria.CriteriaBuilder;
|
||||
import javax.persistence.criteria.CriteriaQuery;
|
||||
import javax.persistence.criteria.Root;
|
||||
import xyz.danielcortes.framework.PersistenceManager;
|
||||
import xyz.danielcortes.framework.BaseRepository;
|
||||
import xyz.danielcortes.models.Libro;
|
||||
|
||||
public class LibroRepository {
|
||||
|
||||
private EntityManager em;
|
||||
|
||||
public LibroRepository() {
|
||||
this.em = PersistenceManager.getEntityManager();
|
||||
}
|
||||
public class LibroRepository extends BaseRepository<Libro> {
|
||||
|
||||
public List<Libro> getAll() {
|
||||
TypedQuery<Libro> query = em.createQuery("SELECT l FROM Libro l", Libro.class);
|
||||
@@ -36,42 +28,4 @@ public class LibroRepository {
|
||||
);
|
||||
return em.createQuery(query).getResultList();
|
||||
}
|
||||
|
||||
public void save(Libro libro) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.persist(libro);
|
||||
} catch (
|
||||
PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void update(Libro libro) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.merge(libro);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
public void delete(Libro libro) {
|
||||
em.getTransaction().begin();
|
||||
|
||||
try {
|
||||
em.remove(libro);
|
||||
} catch (PersistenceException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
em.getTransaction().commit();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user