Boa tarde amigos Java-Mens.
Estou precisando de trabalhar com informações de dois objetos do mesmo tipo preenchido com valores vindo do banco.
Exemplo:
Copo copo1 = (Copo) Requests.Select(session, "FROM Copos WHERE id= 150 ", null, 0).get(0);
// Cor atual no banco é Azu
copo1.setCor("Verde");
//Setei uma nova cor mais não persisti este objeto.
Copo copo2 = (Copo) Requests.Select(session, "FROM Copos WHERE id= "+copo1.getId(), null, 0).get(0);
//A cor deste objeto no banco ainda dever ser Azul
System.out.println("Cor do copo "copo2.getCor()");
// Mais a cor deste campo no banco ainda é Azul. Mais no meu objeto copo2.xpto já é verde.
O meu problema é que, sem eu persistir qualquer objeto junto ao banco, ele já está alterando o valor, alguém sabe o porque isso está acontecendo?
Tenho suspeita de ser o Lazy Fetching, andei dando uma olhada mais não tenho certeza disso.
Detalhe: Estou usando java 1.4.2_16, e Hibernate 3.2.1
Agradeço desde já.