packagebr.gov.nutec.modelo;importjava.io.Serializable;importjava.util.Date;importjava.util.List;importjavax.persistence.Column;importjavax.persistence.GeneratedValue;importjavax.persistence.GenerationType;importjavax.persistence.Table;importjavax.persistence.Temporal;importjavax.persistence.TemporalType;importjavax.persistence.Entity;importjavax.persistence.Id;importjavax.persistence.OneToMany;importorg.hibernate.validator.Length;importorg.hibernate.validator.NotNull;@Entity@Table(name="pessoa")publicclassPessoaimplementsSerializable{privatestaticlongserialVersionUID=1L;publicstaticlonggetSerialVersionUID(){returnserialVersionUID;}publicstaticvoidsetSerialVersionUID(longaSerialVersionUID){serialVersionUID=aSerialVersionUID;}@Id@GeneratedValue(strategy=GenerationType.IDENTITY)@Column(name="pessoa_id")// chave primariaprivateLongid;//*************************************************///* relacionamento 1 para n * //*************************************************/@OneToMany(mappedBy="pessoa_id")privateList<Mensalidade>men_id;@NotNull@Length(min=5,max=40)@Column(name="nome")privateStringnome;@Column(name="cpf",unique=true)privateStringcpf;@NotNull@Length(min=1,max=40)@Column(name="matricula")privateStringmatricula;@Column(name="digina")privateStringdigina;@Column(name="data_matricula")@Temporal(javax.persistence.TemporalType.DATE)privateDatedata_matricula;@Column(name="RG")privateStringRG;@Column(name="orgao_exp")privateStringorgao_exp;@Column(name="titulo_ele")privateStringtitulo_ele;@Column(name="endereco")privateStringendereco;@Column(name="bairro")privateStringbairro;@Column(name="cidade")privateStringcidade;@Column(name="uf")privateStringuf;@Column(name="fone")privateStringfone;@Column(name="celular")privateStringcelular;@Column(name="email")privateStringemail;@Column(name="senha")privateStringsenha;@Temporal(TemporalType.DATE)@Column(name="data_nasc")privateDatedata_nasc;publicvoidsetNome(Stringnome){System.out.println("Pessoa >> nome : "+this.nome);this.nome=nome;}@Overridepublicbooleanequals(Objectobj){if((objinstanceofPessoa)&&(((Pessoa)obj).getCpf().equals(this.getCpf()))){returntrue;}else{returnfalse;}}@OverridepublicinthashCode(){inthash=3;hash=23*hash+(this.getId()!=null?this.getId().hashCode():0);hash=23*hash+(this.getNome()!=null?this.getNome().hashCode():0);hash=23*hash+(this.getCpf()!=null?this.getCpf().hashCode():0);hash=23*hash+(this.getMatricula()!=null?this.getMatricula().hashCode():0);hash=23*hash+(this.getDigina()!=null?this.getDigina().hashCode():0);hash=23*hash+(this.getData_matricula()!=null?this.getData_matricula().hashCode():0);hash=23*hash+(this.getRG()!=null?this.getRG().hashCode():0);hash=23*hash+(this.getOrgao_exp()!=null?this.getOrgao_exp().hashCode():0);hash=23*hash+(this.getTitulo_ele()!=null?this.getTitulo_ele().hashCode():0);hash=23*hash+(this.getEndereco()!=null?this.getEndereco().hashCode():0);hash=23*hash+(this.getBairro()!=null?this.getBairro().hashCode():0);hash=23*hash+(this.getCidade()!=null?this.getCidade().hashCode():0);hash=23*hash+(this.getUf()!=null?this.getUf().hashCode():0);hash=23*hash+(this.getFone()!=null?this.getFone().hashCode():0);hash=23*hash+(this.getCelular()!=null?this.getCelular().hashCode():0);hash=23*hash+(this.getEmail()!=null?this.getEmail().hashCode():0);hash=23*hash+(this.getSenha()!=null?this.getSenha().hashCode():0);hash=23*hash+(this.getData_nasc()!=null?this.getData_nasc().hashCode():0);returnhash;}/**getset
*********************************MENSALIDADE.JAVA
packagebr.gov.nutec.modelo;importjava.io.Serializable;importjava.util.Date;importjavax.persistence.Column;importjavax.persistence.GeneratedValue;importjavax.persistence.GenerationType;importjavax.persistence.Table;importjavax.persistence.Temporal;importjavax.persistence.Entity;importjavax.persistence.FetchType;importjavax.persistence.Id;importjavax.persistence.JoinColumn;importjavax.persistence.ManyToOne;importorg.hibernate.validator.NotNull;@Entity@Table(name="mensalidade")publicclassMensalidadeimplementsSerializable{privatestaticlongserialVersionUID=1L;publicstaticlonggetSerialVersionUID(){returnserialVersionUID;}publicstaticvoidsetSerialVersionUID(longaSerialVersionUID){serialVersionUID=aSerialVersionUID;}@Id@NotNull@GeneratedValue(strategy=GenerationType.IDENTITY)@Column(name="men_id")// chave primariaprivateLongid;//*************************************************///* relacionamento n para 1 * //*************************************************/@ManyToOne(fetch=FetchType.LAZY)@JoinColumn(name="men_id")privatePessoapessoa_id;@Column(name="data_pag")@Temporal(javax.persistence.TemporalType.DATE)privateDatedata_pag;@Column(name="valor")privateLongvalor;@Overridepublicbooleanequals(Objectobj){if((objinstanceofMensalidade)&&(((Mensalidade)obj).getValor().equals(this.getValor()))){returntrue;}else{returnfalse;}}@OverridepublicinthashCode(){inthash=5;hash=41*hash+(this.getId()!=null?this.getId().hashCode():0);hash=41*hash+(this.getData_pag()!=null?this.getData_pag().hashCode():0);hash=41*hash+(this.getValor()!=null?this.getValor().hashCode():0);returnhash;}
juniorsatanas
Quando eu rodo minha classe GerarBanco.java, ele da este erro:
Voce tem no banco de dados, na entidade Pessoa o atributo men_id realmente?
Não parece que tem!
juniorsatanas
Realmente foi bem observado ! não tenho !
AGAraujo
Então basta colocar o nome do campo correspondente a pessoa no seu banco de dados e dar continuidade.
Até a próxima
juniorsatanas
Estou seguindo este padrão agora :
packagebr.com.jeebrasil.hibernate.anotacoes.dominio;importjava.util.Collection;importjavax.persistence.*;importorg.hibernate.annotations.Cascade;importorg.hibernate.annotations.CascadeType;@Entity@Table(schema="anotacoes")publicclassUniversidade{@Id@GeneratedValue(strategy=GenerationType.SEQUENCE)@Column(name="id_universidade")privateintid;privateStringnome;@OneToMany(mappedBy="universidade",fetch=FetchType.LAZY)@Cascade(CascadeType.ALL)privateCollection<Centro>centros;//Métodos getters e setters//...}
packagebr.com.jeebrasil.hibernate.anotacoes.dominio;importjavax.persistence.*;importorg.hibernate.annotations.Cascade;importorg.hibernate.annotations.CascadeType;importorg.hibernate.annotations.Fetch;importorg.hibernate.annotations.FetchMode;@Entity@Table(schema="anotacoes")publicclassCentro{@Id@GeneratedValue(strategy=GenerationType.SEQUENCE)@Column(name="id_centro")privateintid;privateStringnome;@ManyToOne(fetch=FetchType.EAGER)@JoinColumn(name="id_universidade",insertable=true,updatable=true)@Fetch(FetchMode.JOIN)@Cascade(CascadeType.SAVE_UPDATE)privateUniversidadeuniversidade;//Métodos getters e setters//...}