Erro ao inserir dados na tabela do mysql usando hibernate

Sou novo e estou seguindo um projeto porem a hoda de testar o hibernate para adicionar os dados nas tabelas ele nao vai.

segue codigo de erro

Building petshot 1.0-SNAPSHOT

— exec-maven-plugin:1.2.1:exec (default-cli) @ petshot —
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.Version
INFORMAÇÕES: Hibernate Annotations 3.3.0.GA
jun 15, 2019 9:24:23 AM org.hibernate.cfg.Environment
INFORMAÇÕES: Hibernate 3.2.5
jun 15, 2019 9:24:23 AM org.hibernate.cfg.Environment
INFORMAÇÕES: hibernate.properties not found
jun 15, 2019 9:24:23 AM org.hibernate.cfg.Environment buildBytecodeProvider
INFORMAÇÕES: Bytecode provider name : cglib
jun 15, 2019 9:24:23 AM org.hibernate.cfg.Environment
INFORMAÇÕES: using JDK 1.4 java.sql.Timestamp handling
jun 15, 2019 9:24:23 AM org.hibernate.annotations.common.Version
INFO: HCANN000001: Hibernate Commons Annotations {4.0.1.Final}
jun 15, 2019 9:24:23 AM org.hibernate.cfg.Configuration configure
INFORMAÇÕES: configuring from resource: hibernate.cfg.xml
jun 15, 2019 9:24:23 AM org.hibernate.cfg.Configuration getConfigurationInputStream
INFORMAÇÕES: Configuration resource: hibernate.cfg.xml
jun 15, 2019 9:24:23 AM org.hibernate.cfg.Configuration doConfigure
INFORMAÇÕES: Configured SessionFactory: null
jun 15, 2019 9:24:23 AM org.hibernate.dialect.Dialect
INFORMAÇÕES: Using dialect: org.hibernate.dialect.MySQLDialect
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Pessoa
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Pessoa on table Pessoa
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.PF
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.PF on table PF
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.PJ
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.PJ on table PJ
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.DocReceita
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.DocReceita on table DocReceita
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Telefone
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Telefone on table Telefone
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Endereco
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Endereco on table Endereco
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Animal
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Animal on table Animal
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Cachorro
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Cachorro on table Cachorro
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Gato
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Gato on table Gato
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Servico
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Servico on table Servico
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Banho
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Banho on table Banho
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Consulta
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Consulta on table Consulta
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Tosa
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Tosa on table Tosa
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationBinder bindClass
INFORMAÇÕES: Binding entity from annotated class: br.com.alexgaeta.controle.Vacina
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.EntityBinder bindTable
INFORMAÇÕES: Bind entity br.com.alexgaeta.controle.Vacina on table Vacina
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.CollectionBinder bindOneToManySecondPass
INFORMAÇÕES: Mapping collection: br.com.alexgaeta.controle.Pessoa.animal -> Animal
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.CollectionBinder bindOneToManySecondPass
INFORMAÇÕES: Mapping collection: br.com.alexgaeta.controle.Pessoa.endereco -> Endereco
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.CollectionBinder bindOneToManySecondPass
INFORMAÇÕES: Mapping collection: br.com.alexgaeta.controle.Pessoa.telefone -> Telefone
jun 15, 2019 9:24:23 AM org.hibernate.cfg.annotations.CollectionBinder bindOneToManySecondPass
INFORMAÇÕES: Mapping collection: br.com.alexgaeta.controle.Animal.servico -> Servico
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationConfiguration secondPassCompile
INFORMAÇÕES: Hibernate Validator not found: ignoring
jun 15, 2019 9:24:23 AM org.hibernate.cfg.AnnotationConfiguration secondPassCompile
INFORMAÇÕES: Hibernate Validator not found: ignoring
jun 15, 2019 9:24:23 AM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFORMAÇÕES: Running hbm2ddl schema export
jun 15, 2019 9:24:23 AM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFORMAÇÕES: exporting generated schema to database
jun 15, 2019 9:24:23 AM org.hibernate.connection.DriverManagerConnectionProvider configure
INFORMAÇÕES: Using Hibernate built-in connection pool (not for production use!)
jun 15, 2019 9:24:23 AM org.hibernate.connection.DriverManagerConnectionProvider configure
INFORMAÇÕES: Hibernate connection pool size: 20
jun 15, 2019 9:24:23 AM org.hibernate.connection.DriverManagerConnectionProvider configure
INFORMAÇÕES: autocommit mode: false
Loading class com.mysql.jdbc.Driver'. This is deprecated. The new driver class iscom.mysql.cj.jdbc.Driver’. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
jun 15, 2019 9:24:23 AM org.hibernate.connection.DriverManagerConnectionProvider configure
INFORMAÇÕES: using driver: com.mysql.jdbc.Driver at URL: jdbc:mysql://localhost:3306/estimacao?useTimezone=true&serverTimezone=UTC
jun 15, 2019 9:24:23 AM org.hibernate.connection.DriverManagerConnectionProvider configure
INFORMAÇÕES: connection properties: {user=root, password=****}
jun 15, 2019 9:24:24 AM org.hibernate.tool.hbm2ddl.SchemaExport execute
INFORMAÇÕES: schema export complete
jun 15, 2019 9:24:24 AM org.hibernate.connection.DriverManagerConnectionProvider close
INFORMAÇÕES: cleaning up connection pool: jdbc:mysql://localhost:3306/estimacao?useTimezone=true&serverTimezone=UTC

BUILD SUCCESS

Total time: 1.864s
Finished at: Sat Jun 15 09:24:24 BRT 2019
Final Memory: 6M/106M

Bom dia.
Seja bem vindo, na vdd essa é a saída do servidor web, poste seu arquivo de configuração do Hibernate pra gente dar uma olhadinha.

Segue o xml do Hibernate

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 
3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>

<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.format_sql">true</property>
<property name="hibernate.pool_size">10</property>
<property name="hibernate.hbm2dll.auto">create</property>



<mapping class="br.com.alexgaeta.controle.Pessoa"/>
<mapping class="br.com.alexgaeta.controle.PF"/>
<mapping class="br.com.alexgaeta.controle.PJ"/>
<mapping class="br.com.alexgaeta.controle.DocReceita"/>
<mapping class="br.com.alexgaeta.controle.CPF"/>
<mapping class="br.com.alexgaeta.controle.CNPJ"/>
<mapping class="br.com.alexgaeta.controle.Telefone"/>
<mapping class="br.com.alexgaeta.controle.Endereco"/>
<mapping class="br.com.alexgaeta.controle.Animal"/>
<mapping class="br.com.alexgaeta.controle.Cachorro"/>
<mapping class="br.com.alexgaeta.controle.Gato"/>
<mapping class="br.com.alexgaeta.controle.Servico"/>
<mapping class="br.com.alexgaeta.controle.Banho"/>
<mapping class="br.com.alexgaeta.controle.Consulta"/>
<mapping class="br.com.alexgaeta.controle.Tosa"/>
<mapping class="br.com.alexgaeta.controle.Vacina"/>
</session-factory>
</hibernate-configuration>

Certo, ao que indica o arquivo está certo, depois que criou o banco, pode usar tbm o

<property name="hibernate.hbm2ddl.auto">update</property>

Sabe nos informar se o objeto é salvo e só não é Persistido no hibernate?

BUILD SUCCESS

Total time: 1.864s
Finished at: Sat Jun 15 09:24:24 BRT 2019
Final Memory: 6M/106M

Essa mensagem indica sucesso, não apresenta erro, nos dê mais detalhes do que está tentando fazer, seu método de salvar, etc…

ele nao e salvo
este projet ja deve ser conhecido por vcs. “Petshop estimação”.

Este e meu teste Hibenate
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package br.com.alexgaeta.modelo;

    import org.hibernate.cfg.AnnotationConfiguration;
    import org.hibernate.tool.hbm2ddl.SchemaExport;


    /**
    *
    * @author Administrador
    */
     public class TestandoHibernate {

/**
 *
 * @param args
 */
 
    public static void main(String[] args){
        GerarTabelas();
    }
    private static void GerarTabelas() {

        AnnotationConfiguration cfg = new AnnotationConfiguration();
        cfg.configure("hibernate.cfg.xml");
        SchemaExport sx = new SchemaExport(cfg);
        sx.create(true, true);
    }

    /*private static void persistindo() throws Exception {
    PF pf = new PF();
    pf.setNome("Alex Gaeta");
    pf.setEmail("alexgaeta@globo.com");
    pf.setSenha("374239");
    
    DocReceita cpf = new CPF("25734585807");
    pf.setDocReceita(cpf);
    cpf.setPessoa(pf);
    
    Endereco end = new Endereco();
    end.setBairro("Jd Coimbra");
    end.setCep("03691-100");
    end.setCidade("Sao Paulo");
    end.setLogradouro("Rua tiburcio Emildo da Cunha");
    end.setNumero("14");
    end.setUf("SP");
    end.setPessoa(pf);
    
    Collection<Endereco> e= new ArrayList<Endereco>();
    e.add(end);
    pf.setEndereco(e);
    
    Telefone t = new Telefone();
    t.setDdd(11);
    t.setNumero(2280-4507);
    t.setPessoa(pf);
    
    Collection<Telefone> tel = new ArrayList<Telefone>();
    tel.add(t);
    pf.setTelefone(tel);
    
    Animal a = new Animal();
    Date d = new Date(2019,06,13);
    a.setNome("Ted");
    a.setRaca("Tomba Lata");
    a.setSexo("M");
    a.setObservacao("Docil");
    a.setPessoa(pf);
    
    Servico s = new Banho();
    Date diaBanho = new Date(2019,06,13);
    s.setData(diaBanho);
    
    s.setDescricao("Banho Completo");
    s.setValor(30.00);
    s.setAnimal(a);
    
    Collection<Servico> serv = new ArrayList<Servico>();
    serv.add(s);
    a.setServico(serv);
    
    Collection<Animal> ani = new ArrayList<Animal>();
    ani.add(a);
    pf.setAnimal(ani);
    
    pf.salvar(pf);
   
    }    */
    }

este é conexao com hibenrnate

package br.com.alexgaeta.modelo;


import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;

/**
*
* @author Administrador
*/
public class ConexaoHibernate {
private static final SessionFactory sessionFactory;
private static final ThreadLocal<Session>THREAD_LOCAL=new ThreadLocal<Session> 
();

static {
    try {
        // Create the SessionFactory from standard (hibernate.cfg.xml) 
        // config file.
        sessionFactory = new 
 AnnotationConfiguration().configure("hibernate.cfg.xml").buildSessionFactory();
        System.out.println("Hibernate Configuration loaded");
    } catch (HibernateException e) {
        // Log the exception. 
        System.err.println("Erro na fabrica de sessao hibernate");
        System.err.println("Fim do Erro na fabrica de sessao hibernate");
        throw new ExceptionInInitializerError(e);
    }
  }

  /**
  *
 * @return
 */
  public static Session getInstance() {
    Session session = (Session)THREAD_LOCAL.get();
    session = sessionFactory.openSession();
    THREAD_LOCAL.set(session);
    return session;
   }
}

este é o car PessoaDAO onde tem o metodo SALVAR.

package br.com.alexgaeta.modelo;

import br.com.alexgaeta.controle.Autenticavel;
import br.com.alexgaeta.controle.Pessoa;
import java.util.Collection;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

 /**
 *
 * @author Administrador
 */
 public class PessoaDAO {

/**
 *
 * @param usuario
 * @param senha
 * @return
 */
public static Autenticavel autenticar(String usuario, String senha){
    return PessoaDAO.autenticar(usuario,senha);

}

/**
 *
 * @param email
 * @return
 */
public static boolean existe(String email) {
return PessoaDAO.existe(email);
}

/**
 *
 * @param documento
 * @return
 */
static public boolean existe(DocReceita documento){
    return PessoaDAO.existe(documento);
} 

/**
 *
 * @param p
 * @return
 */
public static boolean salvar(Pessoa p) {
    Session session;
    session = ConexaoHibernate.getInstance();
    Transaction tx = null;
    try{
        tx = session.beginTransaction();
        session.save(p);
        return true;
    } catch (Exception e){
    tx.rollback();
    e.printStackTrace();
    return false;
  }finally{
        session.close();
    }
  }    

  /**
  *
  * @param idPessoa
  * @return
  */
  public static  Pessoa consultar(int idPessoa) {
        Session session;
        session = ConexaoHibernate.getInstance();
        Transaction tx = null;
        Pessoa p = null;
        try {
            Query q;
            tx = session.beginTransaction();
            q = session.createQuery("from Pessoa as p where p.idPessoa=:id");
            q.setParameter("id",idPessoa);
            List resultados = q.list();
            if (resultados.size() > 0){
                p = (Pessoa) resultados.get(0);
            }
            return p;
        }catch (Exception e){
            tx.rollback();
            e.printStackTrace();
            return p;
        }finally {
            session.close();
        }
 }

 /**
  *
 * @return
 */
 public static Collection<Pessoa> consultar() {
    Session session;
    session = ConexaoHibernate.getInstance();
    Transaction tx = null;
    Collection<Pessoa> p = null;
    try{
        Query q;
        tx =session.beginTransaction();
        q = session.createQuery("from Pessoa as p");
        p = q.list();
    } catch (Exception e){
        e.printStackTrace();
        tx.rollback();
    } finally {
        session.close();
    }
    
    return p;
 }    /**
 *
 * @param nome
 * @return
 */
  public static Collection<Pessoa> consultar(String nome) {
    Session session;
    session = ConexaoHibernate.getInstance();
    Transaction tx = null;
    Collection<Pessoa> p = null;
    try{
        Query q;
        tx =session.beginTransaction();
        q = session.createQuery("from Pessoa as p where p.nome=:nome");
        q.setParameter("nome", nome);
        p = q.list();
        return p;
    } catch (Exception e){
        e.printStackTrace();
        tx.rollback();
        return p;
    } finally {
        session.close();
    }
  }
  /**
 *
 * @param p
 * @return
 */
 static public boolean alterar(Pessoa p) {
    Session session = ConexaoHibernate.getInstance();
    Transaction tx = null;
    try {
        tx = session.beginTransaction();
        session.merge(p);
        tx.commit();
        return true;
    } catch (Exception e){
        tx.rollback();
        e.printStackTrace();
        return false;
    } finally {
        session.close();
    }
 }

 /**
 *
 * @param p
 * @return
 */
 static public boolean excluir(Pessoa p) {
    Session session = ConexaoHibernate.getInstance();
    Transaction tx = null;
    try {
        tx = session.beginTransaction();
        session.delete(p);
        return true;
    } catch (Exception e){
        tx.rollback();
        e.printStackTrace();
        return false;
    }
 }

 private static class DocReceita {

    public DocReceita() {
    }
 }


 }

Aqui esta a Cass que gera a tabela

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
*/
 package br.com.alexgaeta.controle;

 import java.io.Serializable;
 import java.util.Collection;
 import javax.persistence.*;
 import org.hibernate.annotations.Cascade;
 import org.hibernate.annotations.CascadeType;

/**
 *
 * @author Administrador
 */
 @Entity
 @Inheritance(strategy = InheritanceType.JOINED)
 @DiscriminatorColumn(name="tipo")

 public abstract class Pessoa implements Autenticavel, Serializable {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int idPessoa;
@Column(nullable = false, length = 2)
private int tipo;
@Column(nullable = false, length = 255)
private String nome;
@OneToMany(mappedBy = "pessoa", fetch = FetchType.LAZY)
@Cascade(CascadeType.ALL)
private Collection<Telefone> telefone;
@OneToMany(mappedBy = "pessoa", fetch = FetchType.LAZY)
@Cascade(CascadeType.ALL)
private Collection<Endereco> endereco;
@OneToMany(mappedBy = "pessoa", fetch = FetchType.LAZY)
@Cascade(CascadeType.ALL)
private Collection<Animal> animal;
@Column(nullable = false, length = 255)
private String email;
@Column(nullable = false, length = 255)
private String senha;
@OneToOne(mappedBy = "pessoa", fetch = FetchType.LAZY)
@Cascade(CascadeType.ALL)
private DocReceita docreceita;

static int PF = 1;
static int PJ = 2;


/**
 * @return the idPessoa
 */
public int getIdPessoa() {
    return idPessoa;
}

/**
 * @param idPessoa the idPessoa to set
 */
public void setIdPessoa(int idPessoa) {
    this.idPessoa = idPessoa;
}

/**
 * @return the tipo
 */
public int getTipo() {
    return tipo;
}

/**
 * @param tipo the tipo to set
 */
public void setTipo(int tipo) {
    this.tipo = tipo;
}

/**
 * @return the nome
 */
public String getNome() {
    return nome;
}

/**
 * @param nome the nome to set
 */
public void setNome(String nome) {
    this.nome = nome;
}

/**
 * @return the telefone
 */
public Collection<Telefone> getTelefone() {
    return telefone;
}

/**
 * @param telefone the telefone to set
 */
public void setTelefone(Collection<Telefone> telefone) {
    this.telefone = telefone;
}

/**
 * @return the endereco
 */
public Collection<Endereco> getEndereco() {
    return endereco;
}

/**
 * @param endereco the endereco to set
 */
public void setEndereco(Collection<Endereco> endereco) {
    this.endereco = endereco;
}

/**
 * @return the animal
 */
public Collection<Animal> getAnimal() {
    return animal;
}

/**
 * @param animal the animal to set
 */
public void setAnimal(Collection<Animal> animal) {
    this.animal = animal;
}

/**
 * @return the email
 */
public String getEmail() {
    return email;
}

/**
 * @param email the email to set
 */
public void setEmail(String email) {
    this.email = email;
}

/**
 * @return the senha
 */
public String getSenha() {
    return senha;
}

/**
 * @param senha the senha to set
 */
public void setSenha(String senha) {
    this.senha = senha;
}

/**
 * @return the docreceita
 */
public DocReceita getDocreceita() {
    return docreceita;
}

/**
 * @param docreceita the docreceita to set
 */
public void setDocreceita(DocReceita docreceita) {
    this.docreceita = docreceita;
}

/**
 *
 * @param idPessoa
 * @param tipo
 * @param nome
 * @param telefone
 * @param endereco
 * @param animal
 * @param email
 * @param senha
 * @param docreceita
 */
  public Pessoa(int idPessoa, int tipo, String nome, Collection<Telefone> telefone, 
  Collection<Endereco> endereco, Collection<Animal> animal, String email, String senha, 
  DocReceita docreceita) {
    this.idPessoa = idPessoa;
    this.tipo = tipo;
    this.nome = nome;
    this.telefone = telefone;
    this.endereco = endereco;
    this.animal = animal;
    this.email = email;
    this.senha = senha;
    this.docreceita = docreceita;
}

/**
 *
 */
public Pessoa() {
    
}
 /**
 * @return the PF
 */
public static int getPF() {
    return PF;
}

/**
 * @param aPF the PF to set
 */
public static void setPF(int aPF) {
    PF = aPF;
}

/**
 * @return the PJ
 */
public static int getPJ() {
    return PJ;
}

/**
 * @param aPJ the PJ to set
 */
public static void setPJ(int aPJ) {
    PJ = aPJ;
}

}