Select Hibernate

7 respostas
tiago.vt

Pessoal estou começando a estudar hibernate, peguei aqui no guj uma tutorial introdução ao hibernate 3 no tutorial fala o seguinte para fazer o select

Criteria select = sessao.createCriteria(TOProduto.class);
		
		List objetos = select.list();
		System.out.println(objetos);
		
		transatransaction.commit();
		sessao.close();

o resultado é esse

[to.TOProduto@3d7dc1cb, to.TOProduto@b3e15f7, to.TOProduto@191410e5, to.TOProduto@7461373f, to.TOProduto@1a7244ca, to.TOProduto@28c5ea2]

se eu fizer desse modo :

Query select = sessao.createQuery("From TOProduto");
		
		List objetos = select.list();
		System.out.println(objetos);
		
		transatransaction.commit();
		sessao.close();

objetenho o mesmo resultado…oq está faltando ow está errado???

7 Respostas

ebortolatto

E se você sobreescrever o método toString() da classe?

Marky.Vasconcelos

Mas qual é o problema disso?

Lembre-se… agora com hibernate voce vai trabalhar com Objetos não com um monte de Strings do banco de dados.

tiago.vt

tentei e não deu certo…

Mark_Ameba:

Mas qual é o problema disso?

Lembre-se… agora com hibernate voce vai trabalhar com Objetos não com um monte de Strings do banco de dados.

ta mais como que imprimo??

Marky.Vasconcelos
Criteria select = sessao.createCriteria(TOProduto.class);
		List objetos = select.list();
		sessao.close();

TOProduto produto1 = (TOProduto) objetos.get(0);
System.out.println(produto1.getAlgo...);

Essa List contem objetos do tipo que voce fez o select.

O caso de aparecer essas Strings estranhas é por que esse é o padrão toString da classe Object se não sobreescrita.
Voce veria a mesma coisa fazendo isso.

List<TOProduto> produtos = new ArrayList<TOProduto>();
produtos.add(new TOProduto());
produtos.add(new TOProduto());
produtos.add(new TOProduto());
System.out.println(produtos);
tiago.vt
Mark_Ameba:
Criteria select = sessao.createCriteria(TOProduto.class);
		List objetos = select.list();
		sessao.close();

TOProduto produto1 = (TOProduto) objetos.get(0);
System.out.println(produto1.getAlgo...);

Essa List contem objetos do tipo que voce fez o select.

O caso de aparecer essas Strings estranhas é por que esse é o padrão toString da classe Object se não sobreescrita.
Voce veria a mesma coisa fazendo isso.

List<TOProduto> produtos = new ArrayList<TOProduto>();



produtos.add(new TOProduto());
produtos.add(new TOProduto());
produtos.add(new TOProduto());
System.out.println(produtos);

Valeu pela ajuda.....
não abusando muito como que eu faço para preencher um jtable usando o hibernate....

Marky.Vasconcelos

Ahh cara… ai já é algo complicado… mas voce pode ler o artigo que fiz: ObjectTableModel dai voce vai trabalhar com Lists de objetos (igual ao que o Hibernate retorna).

tiago.vt

já entendi aki… fiz um

ArrayList test2 = new ArrayList();		
		Criteria select = sessao.createCriteria(TOProduto.class);
		List objetos = select.list();
		System.out.println(objetos.size());
		for(int i = 0; i < objetos.size(); i++){
			TOProduto produto1 = (TOProduto) objetos.get(i);
			ArrayList prod = new ArrayList();
			prod.add(produto1.getCodProduto());
			prod.add(produto1.getNome());
			
			test2.add(prod);
		}

dae eu crio um tableModel dae da do jeito q eu usava antes qndo usava o codigo sql

Criado 25 de junho de 2009
Ultima resposta 25 de jun. de 2009
Respostas 7
Participantes 3