Session Load com chave composta (Hibernate)

3 respostas
kivervinicius

Boa tarde, quebrei a cabeça e até agora não consegui executar, como faria para fazer um load de uma classe de chave composta.

@Entity
public class ProcessoClientes implements IBean,Serializable {
 

	/**
	 * 
	 */
	private static final long serialVersionUID = -5224957629708585771L;

	@Id
	@ManyToOne
	private Processo processo;
	
	@Id
	@ManyToOne
	private Pessoa pessoa;

	public Processo getProcesso() {
		return processo;
	}

	public void setProcesso(Processo processo) {
		this.processo = processo;
	}

	public Pessoa getPessoa() {
		return pessoa;
	}

	public void setPessoa(Pessoa pessoa) {
		this.pessoa = pessoa;
	}

	
}

Dao

public ProcessoClientes carrega(Long id) { return (ProcessoClientes) this.session.load(ProcessoClientes.class, id); }

3 Respostas

Hebert_Coelho

Cara, de onde você tirou esse exemplo de chave composta? Eu nunca vi.

O modelo que já vi é assim: Chave Primária Composta.

kivervinicius
public ProcessoClientes carrega(Long pessoaId,Long processoId) {
		
		Criteria crt = this.session.createCriteria(ProcessoClientes.class);
		crt.add(Restrictions.eq("pessoa.id", pessoaId));
		crt.add(Restrictions.eq("processo.id", processoId));
		return (ProcessoClientes) crt.uniqueResult();
			
	}
kivervinicius

jakefrog:
Cara, de onde você tirou esse exemplo de chave composta? Eu nunca vi.

O modelo que já vi é assim: Chave Primária Composta.

Eh uma das formas de fazer via hibernate

Criado 10 de maio de 2012
Ultima resposta 11 de mai. de 2012
Respostas 3
Participantes 2