Hibernate - Objetos relacionados

2 respostas
gustavodelgado

Olá,

Vou tentar expor minha dúvida através de um exemplo:
Supondo que tenho uma classe Pessoa e uma classe Municipio, onde Pessoa tem um atributo do tipo Municipio.

Em alguns casos, a pessoa cadastrada ainda não possui um município definido (no banco de dados, a coluna municipio pode estar com o valor 0).

Eu tenho um DAO genérico que possui um método selectById e quando faço um select de uma Pessoa, dá um erro quando o atributo Municipio é nulo (no banco está 0).

Existe alguma maneira de mapear no Pessoa.hbm.xml de uma forma que ele traga a pessoa, mesmo que esta não possua município?? Ou não tem outra saída a não ser criar outro método de busca utilizando o Left Join Fetch? Meu mapeamento no Pessoa.hbm.xml está assim:

Coloquei o lazy=“false” para que ele já traga automaticamente os relacionamentos, mas tem algum outro atributo que diga que é pra trazer os relacionamentos “apenas se existirem”? rs

[]s

2 Respostas

micheljuca

acho que depende do que o hibernate considera que NAO EXISTE, acho que 0 nao eh uma boa dica. Se nao me engano o hibernate trabalha com as classes wrapper e ele entende que nao existe quando tem NULL.

gustavodelgado

Opa, era isso mesmo… coloquei null em um dos registros e funcionou blz.
Valeu cara!!

Criado 19 de maio de 2006
Ultima resposta 19 de mai. de 2006
Respostas 2
Participantes 2