@Override public boolean eliminarCategoria(Categoria categoria) throws Exception { boolean categoriaBorrada = false; try { begin(); getSession().delete(categoria); DAO.close(); return categoriaBorrada = true; } catch (HibernateException e) { throw new Exception("Error al borrar categoria " + categoria.getIdcategoria()); } }
@Override public Categoria crearCategoria(Categoria categoria) throws Exception { try { begin(); getSession().save(categoria); commit(); DAO.close(); return categoria; } catch (HibernateException e) { throw new Exception("Error al crear la categoria", e); } }
@Override public List<Categoria> listarTodasCategorias() throws Exception { List<Categoria> listaCategorias = null; try { begin(); listaCategorias = getSession().createQuery("FROM Categoria").list(); DAO.close(); } catch (HibernateException e) { throw new Exception("Error al listar todas las categorias", e); } return listaCategorias; }
@Override public Categoria guardarCategoria(Categoria categoria) throws Exception { Categoria categoriaActualizada = null; try { begin(); getSession().update(categoria); commit(); DAO.close(); categoriaActualizada = buscarCategoria(categoria.getIdcategoria()); } catch (HibernateException e) { throw new Exception("Error al guardar la categoria " + categoria.getIdcategoria()); } return categoriaActualizada; }
@Override public List<Categoria> listarCategorias(int limite) throws Exception { List<Categoria> listaCategorias = null; try { begin(); Query query = getSession().createQuery("FROM Categoria"); query.setMaxResults(limite); listaCategorias = query.list(); DAO.close(); } catch (HibernateException e) { throw new Exception("Error al listar las categorias", e); } return listaCategorias; }
@Override public Categoria buscarCategoria(Integer idCategoria) throws Exception { Categoria categoria = null; try { begin(); categoria = (Categoria) getSession() .createQuery("FROM Categoria c WHERE c.idcategoria = :idCategoria") .setParameter("idCategoria", idCategoria) .uniqueResult(); DAO.close(); } catch (HibernateException e) { throw new Exception("Error al buscar la categoria " + idCategoria); } return categoria; }