@ManyToOne Hibernate

5 respostas
Ace

Bom dia pessoal,
Está acontecendo algo estranho em meu relacionamento, com certeza por algum vacilo meu, o que acontece é o seguinte, tenho uma tabela de Usuarios cujo a Pk é cpf e outra DadosUsuario com um relacionamento ManyToOne com Usuarios porem ele não esta gerando as Fk. :?

@Entity(name="usuarios_clube")
public class UsuariosClube {

	@Id
	private Long cpf;
        
        //outros atributos

       public Long getCpf() {
		return cpf;
	}
	public void setCpf(Long cpf) {
		this.cpf = cpf;
	}
}
@Entity
public class DadosUsuario {
	
	@Id
	@GeneratedValue
	private Long id;	
	
	@Temporal(TemporalType.DATE)
	private Calendar dataDeAcesso;
	
	@ManyToOne
	private UsuariosClube usuario;
}

Alguem poderia me dizer onde estou errando?

mto obrigado a todos.

5 Respostas

felipebbarbosa

Olá, em minhas aplicações eu faço o mapeamento da seguinte forma:

@JoinColumn(name = "usuario", referencedColumnName = "cpf")
@ManyToOne
private UsuariosClube usuario;

Talvez esta não seja a melhor maneira, mas funciona! =)

drsmachado

Camarada, apenas dizer que o atributo é Many/OneToMany/One é o mesmo que nada.
Siga o exemplo do camarada aí de cima e faça direito.

fbl.lucas

Uma consideração: mapear o CPF como long não é uma boa ideia pois existe cpf que inicia com 0, o meu mesmo se inicia com 0.

Hebert_Coelho

Veja esse post, ele irá te ajudar: @OneToMany e @ManyToOne Unidirecional e Bidirecional.

Ace

felipebbarbosa,
um detalhe muito importante que acabo de ver que não postei qdo estava criando o topico é que já havia criado o join na coluna da mesma forma que me falou e mesmo assim a Fk não rolou, por isso queria uma opnião de terceiros justamente pra saber se era erro meu ou sei lá onde. rsrs

Criado 24 de fevereiro de 2012
Ultima resposta 24 de fev. de 2012
Respostas 5
Participantes 5