Package beansessao

Source Code of beansessao.UnidadeMedidaDAOImpl

package beansessao;

import java.util.List;

import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import beanentidade.UnidadeMedida;
import util.MyClassException;

@Stateless(name = "UnidadeMedidaDAOImpl")
public class UnidadeMedidaDAOImpl implements UnidadeMedidaDAO {
  /*
   * A anottation @PersistenceContext, da especifica��o JPA, realiza uma
   * inje��o de depend�ncia. O container EJB reconhece a anota��o e
   * automaticamente, injeta um objeto do tipo EntityManager no atributo
   * manager.
   */
  @PersistenceContext(unitName = "livro")
  private EntityManager manager;

  /** FORNECE A CONEXAO COM O BANCO DE DADOS (EQUILAVENTE A CONEXAO JDBC) */

  public void incluir(UnidadeMedida unidade) throws MyClassException {
    try {
      manager.persist(unidade);
    } catch (Exception e) {
      MyClassException m = new MyClassException(
          "Problemas ao gerar Unidade de Medida.");
      throw m;
    }
  }

  //@PersistenceContext(unitName = "livro")
  public List<UnidadeMedida> getLista() throws MyClassException {
    System.out.println("------------------------ PASSO 3------");
    Query query = null;
    System.out.println("------------------------ PASSO 3.1");
    query = manager.createQuery("SELECT p FROM UnidadeMedida as p");
    List<UnidadeMedida> listaUnidade = query.getResultList();
    if (listaUnidade.size() == 0) {
      throw new MyClassException("Nenhuma unidade cadastrada.");
    }
    System.out.println("------------------------ PASSO 4");
    return listaUnidade;
  }

  public UnidadeMedida obter(int id) throws MyClassException {
    UnidadeMedida unidadeMedida = manager.find(UnidadeMedida.class, id);
    if (unidadeMedida == null) {
      throw new MyClassException("Unidade n�o cadastrada.");
    }
    return unidadeMedida;
  }

  public void excluir(int codigo) throws MyClassException {
    UnidadeMedida un = obter(codigo);
    manager.remove(un);
  }

  public void alterar(UnidadeMedida unidade) throws MyClassException {
    System.out.println("Alterado no banco de dados");
    try{
     

      unidade = manager.merge(unidade);
     
        manager.getTransaction().commit();
        manager.refresh(unidade);       
    } catch (Exception e) {
      MyClassException m = new MyClassException(
          "Problemas ao alterar Unidade de Medida.");
      e.printStackTrace();
      throw m;
    }
  }
}
TOP

Related Classes of beansessao.UnidadeMedidaDAOImpl

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.