Join Objeto  XML
Índice dos Fóruns » Persistência: Hibernate, JPA, JDBC e outros
Autor Mensagem
Fredi
Thread.start()

Membro desde: 19/11/2008 14:30:17
Mensagens: 47
Offline

Galera to usando o hibernate mas to tendo um pequeno problema talvez por desconhecer os recurços que o framework oferece.... fo Fato e o seguinte:

Tenho um objeto :

configuracao que contem um objeto equipamento.... fato e que eu tenho que trazer uma lista de configuracao onde a propriedade "modelo" do equipamento seja like "% algum modelo %"

algo parecido com o que esta abaixo..


Fredi
Thread.start()

Membro desde: 19/11/2008 14:30:17
Mensagens: 47
Offline

Resolvi da seguinte forma mas acho q nao ta legal.....

faço uma busca nos equipamentos usando o ilike colocando o retorno em uma Collection e passando como parametro...




se alguem souber de outra forma...
Fredi
Thread.start()

Membro desde: 19/11/2008 14:30:17
Mensagens: 47
Offline

Usei outra forma :



Porem esta trazendo varios registros onde deveria trazer somente um......

Alguem sabe pq ?
Fredi
Thread.start()

Membro desde: 19/11/2008 14:30:17
Mensagens: 47
Offline

Descobri pq : a propriedade configuracoes(List <ItensConfiguracao> do meu objeto Configuracao estava setado como FetchType.EAGER...... se tivesse setato como LAZY traria somente um , porem nao carregaria os itens de configuração e realmente tem que trazer os itens. O que eu fiz foi isso :


public List<Configuracao> consultaconfListLikeModelo(String modelo){
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
// Seleciona-se os dados via HQL (hibernate query language)
Criteria criteria = session.createCriteria(Configuracao.class);
criteria.createAlias("equi", "e");
criteria.add(Restrictions.ilike("e.descricao", modelo, MatchMode.ANYWHERE));
criteria.setFetchMode("configuracoes", FetchMode.LAZY);
List<Configuracao> confs = criteria.list();
session.getTransaction().commit();
return confs;
}


Funciona perfeitamente , porem o java me informa que quando eu uso essa opçao criteria.setFetchMode("configuracoes", FetchMode.LAZY) o LAZY esta deprecado....

Alguem conhece alguma solução melhor ?
 
Índice dos Fóruns » Persistência: Hibernate, JPA, JDBC e outros
Ir para:   
Powered by JForum 2.1.8 © JForum Team