Mapeamento interface + hibernate

1 resposta
R

Boa Tarde

Estou implmentando uma estrutura de classes que utilizam uma interface. tem alguma forma de implementar um relacionamento para interface, Segue um exemplo que pretendo fazer, utlizando como exemplo esquema parceiros.

public interface IAtividadeParceiro {

	TipoAtividadeParceiro getAtividadeParceiro();
}
Classes que implementam a interface:
@Entity
public class ParceiroCliente extends AbastractAtividadeParceiro {
	@Id
	private ParceiroSub parceiro;

	@Override
	public TipoAtividadeParceiro getAtividadeParceiro() {
		return TipoAtividadeParceiro.Cliente;
	}
@Entity
public class ParceiroFornecedor implements IAtividadeParceiro {

	@Id
	private ParceiroSub parceiro;
	
	@Override
	public TipoAtividadeParceiro getAtividadeParceiro() {
		return TipoAtividadeParceiro.Fornecedor;
	}

E a cLasse parceiro teria isto:

@OneToMany(fetch = FetchType.LAZY, mappedBy = "parceiro")
	@Cascade(CascadeType.SAVE_UPDATE)
	private List<IAtividadeParceiro> atividades = new ArrayList<IAtividadeParceiro>();

Como poderia fazer para isto funcionar, o que mudar para ficar ok.

Grato pela ajuda

Rodrigo

1 Resposta

Hebert_Coelho

Em seu mapeamento OneToMany utilize a opção targetEntity e aponte para sua classe.

Criado 25 de outubro de 2013
Ultima resposta 29 de out. de 2013
Respostas 1
Participantes 2