public List consultaPessoa(int tipo) {
        Session sessao = null;
        List<Pessoa> lista = null;
        try {
            sessao = HibernateUtil.getSessionFactory().openSession();
            sessao.beginTransaction();

            Criteria consulta = null;
            if (tipo == 'C') {
                consulta = sessao.createCriteria(Pessoafisica.class);
            } else if (tipo == 'F') {
                consulta = sessao.createCriteria(Fornecedor.class);
            } else if (tipo == 'V') {
                consulta = sessao.createCriteria(Vendedor.class);
            }

            lista = consulta.list();

            sessao.getTransaction().commit();

        } catch (HibernateException he) {
            sessao.getTransaction().rollback();
        } finally {
            if (sessao != null) {
                sessao.close();
            }

            //IMPEDE QUE A LISTA DE CLIENTES SE MISTURE COM A DE VENDEDORES
            if (tipo == 'C') {
                Pessoa pes = null;
                Pessoa pesFiltro = null;
                List<Pessoa> listaFiltro = this.consultaPessoa('V'); 

                Iterator<Pessoa> itListaFiltro = listaFiltro.iterator();
                Iterator<Pessoa> itLista = lista.iterator();
                //   int i = 0;
                while (itLista.hasNext() && itListaFiltro.hasNext()) {
                    pes = itLista.next();
                    pesFiltro = itListaFiltro.next();
                    if (pesFiltro.getIdPessoa() == pes.getIdPessoa()) {
                        itLista.remove();
                    }
                }
            }
            //IMPEDE QUE A LISTA DE CLIENTES SE MISTURE COM A DE VENDEDORES
            
            return lista;
        }
    }