/** * Metodo para alterar o usuario * * @param obj */ public static void change(Object obj) { try { // Abre a conexao Conexao.getInstance().conecta(); // Abre a transação Conexao.getInstance().getManager().getTransaction().begin(); // Mergeia o objeto passado por parametro com o encontrado no bando. // (atualiza) Conexao.getInstance().getManager().merge(obj); // Comita a transação Conexao.getInstance().getManager().getTransaction().commit(); } catch (Exception e) { e.printStackTrace(); } finally { // Fecha a conexao assim que terminar o try Conexao.getInstance().fechaConexao(); } }
public static Object getById(Class<?> classe, int id) { // Cria uma lista de objetos nula Object obj = null; try { // Abre a conexao Conexao.getInstance().conecta(); // Cria uma query com a select de acordo com o parametro passado Query query = Conexao.getInstance() .getManager() .createQuery("SELECT c FROM " + classe.getSimpleName() + " c WHERE c.id=" + id); // Busca os resultados encontrados no banco obj = query.getResultList().get(0); } catch (Exception e) { e.printStackTrace(); } finally { // Fecha a conexao assim que terminar o try Conexao.getInstance().fechaConexao(); } // Retorna a lista de objetos encontrada return obj; }
/** * Metodo para listar todos os objetos do banco de acordo com a string passada por parametro. Esta * String deve ser o nome da tabela * * @param <T> * @param <T> * @return */ @SuppressWarnings("unchecked") public static <T> List<T> list(Class<T> classe) { // Cria uma lista de objetos nula List<T> listaObject = null; try { // Abre a conexao Conexao.getInstance().conecta(); // Cria uma query com a select de acordo com o parametro passado Query query = Conexao.getInstance() .getManager() .createQuery("SELECT c FROM " + classe.getSimpleName() + " c"); // Busca os resultados encontrados no banco listaObject = query.getResultList(); } catch (Exception e) { e.printStackTrace(); } finally { // Fecha a conexao assim que terminar o try Conexao.getInstance().fechaConexao(); } // Retorna a lista de objetos encontrada return (List<T>) listaObject; }
/** * Metodo para remover o objeto passado por parametro do banco * * @param obj */ public static void remove(Object obj) { try { // Abre a conexao Conexao.getInstance().conecta(); // Abre a transação Conexao.getInstance().getTransaction().begin(); // Mergeia o objeto com o que possui no banco de dados. Este merge // busca o objeto Object c = Conexao.getInstance().getManager().merge(obj); // Remove o objeto do banco Conexao.getInstance().getManager().remove(c); // Comita a transação Conexao.getInstance().getTransaction().commit(); } catch (Exception e) { e.printStackTrace(); } finally { // Fecha a conexao assim que terminar o try Conexao.getInstance().fechaConexao(); } }
/** * Metodo para inserir o objeto passado como parametro no banco de dados * * @param obj */ public static void insert(Object obj) { try { // Cria a conexao Conexao.getInstance().conecta(); // Abre a transação Conexao.getInstance().getManager().getTransaction().begin(); Object c = Conexao.getInstance().getManager().merge(obj); // if (c == obj) { // // Persiste o objeto // Conexao.getInstance().getManager().persist(obj); // } else { Conexao.getInstance().getManager().merge(c); // } // Comita a transacao Conexao.getInstance().getManager().getTransaction().commit(); } catch (Exception e) { e.printStackTrace(); } finally { Conexao.getInstance().fechaConexao(); } }