Mapeamento de classes

2 respostas
darkro

Olá, estou iniciando com hibernate, porém ainda sim tenho duvidas em algo do tipo:

Tenho as seguintes classes:

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name="tb_tipoimoveis")
public class TipoImovel {
	
	@Id
	@GeneratedValue
	@Column(name="id")
	private int id;
	
	@Column(name="txtNome", length=32, nullable=true)
	private String txtNome;

	/*
	GETS & SETS
	*/
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getTxtNome() {
		return txtNome;
	}

	public void setTxtNome(String txtNome) {
		this.txtNome = txtNome;
	}
}
import javax.persistence.*;

import com.azuradesign.azuraimoveis.util.TipoImovel;

@Entity
@Table(name="tb_imoveisdados")
public class Imovel {
	
	@Id
	@GeneratedValue
	@Column(name="id")
	private int id;
	
	@Column(name="hashImovel", length=32, nullable=true)
	private String hash;
	
	@Column(name="tipoImovel", length=3, nullable=true)
	private TipoImovel tipoImovel;
	
	/*
	GETS & SETS
	*/
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getHash() {
		return hash;
	}

	public void setHash(String hash) {
		this.hash = hash;
	}

	public TipoImovel getTipoImovel() {
		return tipoImovel;
	}

	public void setTipoImovel(TipoImovel tipoImovel) {
		this.tipoImovel = tipoImovel;
	}
}

Como ficaria o mapeamento via annotation para uma classe que possui outra classe dentro?, no caso a classe Imovel possui um TipoImovel (classe => classe, classe para classe)?

estu tendo este erro:

org.hibernate.MappingException: Could not determine type for: TipoImovel, at table: tb_imoveisdados, for columns: [org.hibernate.mapping.Column(tipoImovel)]

Obrigado a quem puder ajudar.

2 Respostas

Tiburcio_Mancha

Vc tem que da uma olhada em relacionamentos, lembrando que cada entidade corresponde a uma tabela da base, vc tem que pesquisar os mapeamentos ManyToOne, OneToMany, OneToOne e ManyToMany.

Vc vai ver que tem anotações para se ralizar estes relacionamentos.

darkro

Ok, ouvi falar em alguns forums por ai que existe um tal de composite ??? oque seria isto, e gostaria de saber se no caso meus relacionamento das tabelas é feito via sql memsmo e utilizo myIsam, existe algum problema?, ou teri que passar para innoDb? desempenho ou sei lá…

Obrigado.

Criado 1 de dezembro de 2010
Ultima resposta 2 de dez. de 2010
Respostas 2
Participantes 2