Hibernate --&gt coeções

3 respostas
knik

Em uma classe de teste recupero as informações do banco assim:

public static void main(String[] args) {

		Session sessao = HibernateUtility.getSession();
		Transaction tx = sessao.beginTransaction();
		
		Query select = sessao.createQuery("from Genero");
		
		List<Genero> lista = select.list();
		
		for (Genero genero : lista) {
			System.out.print( "\n" + genero.getId() );
			System.out.print( " - " + genero.getNome() );			
		}
		
		tx.commit();
		sessao.close();
		
	}
Acontece, que no Eclipse (3.2), aparece uma warning na linha abaixo:
List<Genero> lista = select.list();
...sendo que a diretiva select.list() fica gifada de amarelo (acusando a warning ali) do tipo Type Safety. Alguém sabe como arrumar o código para eliminar a warning - sem usar @SuppressWarnings("unchecked"), claro? Estou usando Hibernate 3.2. Obrigao.

3 Respostas

nbluis

O problema é que sua lista foi especificada com o tipo Genero e o select.list() retorna uma List de objetos.

Vá encima do problema e clique Ctrl+1 que ele te diz isso.

Valeu…

knik

Claro que sim. Mas eu queria saber se há outro modo de se fazer isto sem acusar a warning. Ctrl + 1 não me diz muita coisa, apenas informa isto: “Start the Infer Generic Type Arguments refactoring”.
Só que eu não sei como se faz isto.
Tem alguma idéia?

knik

OK, consegui resolver assim:

Tentei implementar com Iterator mas não consegui - sei que há como fazer mas preciso de uma força.
Obrigado.

Criado 23 de fevereiro de 2007
Ultima resposta 23 de fev. de 2007
Respostas 3
Participantes 2