Duvida em Relacionamento Hibernate

4 respostas
F

Pessoal bom dia a todos estou desenvolvendo um sistema em Vraptor, Hibernate aqui…

E estou com dificuldade em entender os relacionamentos do hibernate abaixo descrevo as duvidas, Obrigado desde já!

Tenho uma classe fabricante conforme abaixo:

@Entity
public class Fabricante {
	
	@Id @GeneratedValue
	private Long id;
	@Column(unique=true)
	private String fabricante;
	
	
	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	public String getFabricante() {
		return fabricante;
	}
	public void setFabricante(String fabricante) {
		this.fabricante = fabricante;
	}
	
	

}

E tenho a classe modelo abaixo:

@Entity
public class Marca {
	
	@Id @GeneratedValue
	private Long id;
	
	@OneToMany(mappedBy = "fabricante", targetEntity=Fabricante.class, fetch = FetchType.LAZY, cascade = CascadeType.ALL)
	private Long idfabricante;
	
	@Column(unique=true)
	private String modelo;
	
	
	
}

Gostaria de fazer os joins com as anotações a minha duvida é:
o fabricante neste caso eu teria um relacionamento ManyToOne ou seja um mesmo fabricante pra varios modelos;
ou o que eu fiz esta certo seria um modelo para varios fabricantes!

Abraços e obrigado a todos!

4 Respostas

Hebert_Coelho

Está correto o que você pensou.

Aqui mostra como fazer um relacionamento OneToMany bidirecional: JPA: Mini Livro - Primeiros passos e conceitos detalhados.

F

Obrigado pela resposta poderia so me confirmar se assim ficaria certo!

@Entity
public class Marca {
	
	@Id @GeneratedValue
	private Long id;
	
	@ManyToOne
	@JoinColumn(name = "id")
	private Fabricante fabricante;
	
	
	@Column(unique=true)
	private String modelo;
	
	
	
}

Não alterei nada na minha classe Fabricante pois nao quero amarrar o fabricante ao modelo somente o modelo ao fabricante!

Obrigado e agradeço!

Hebert_Coelho
fabiobrotas:
Obrigado pela resposta poderia so me confirmar se assim ficaria certo!
@Entity
public class Marca {
	
	@Id @GeneratedValue
	private Long id;
	
	@ManyToOne
	@JoinColumn(name = "id")
	private Fabricante fabricante;
	
	
	@Column(unique=true)
	private String modelo;
	
	
	
}

Não alterei nada na minha classe Fabricante pois nao quero amarrar o fabricante ao modelo somente o modelo ao fabricante!

Obrigado e agradeço!

Você testou? Deu alguma mensagem de erro?

F

Não funcionou normal ta certo! hahaha não tou tão burro assim tempo sem mexer com Java…hahaha

Muito Obrigado…

Abraços!

Criado 8 de janeiro de 2013
Ultima resposta 8 de jan. de 2013
Respostas 4
Participantes 2