Otimizar consulta com Hibernate e JFreeChart

0 respostas
E

Boa noite pessoal.

Gostaria de povoar os dados de um gráfico com informações da minha consulta, o problema é que do jeito que peguei precisa que minha consulta seja agrupada por count(nmbairro) e listar cada bairro.

Tipo:
SELECT COUNT(IDBAIRRO) AS NRBAIRRO, NMBAIRRO FROM BAIRRO GROUP BY NMBAIRRO

O problema é que no código abaixo não sei como fazer este agrupamento pois estou aprendendo Hibernate e peguei um exemplo da net e estou tentando montar o meu.

Vejam:

private void button1ActionPerformed(java.awt.event.ActionEvent evt) {                                        

        
        List<PessoasEnderecoVO> pessoasEnderecoVO = new ArrayList(); /* Instancia a lista */
        
        DefaultPieDataset pieDataset = new DefaultPieDataset();
        
        try {
            Session sess = HibernateUtil.getInstance().getSession();
            
            Query query = sess.createQuery("from PessoasEndereco in class br.com.padrao.vo.PessoasEnderecoVO");
            
            Iterator list = query.iterate();
            PessoasEnderecoVO pessoasEndereco = null;
            while (list.hasNext()) {
                pessoasEndereco = (PessoasEnderecoVO) list.next();
                String a = pessoasEndereco.getBairroId().getDsbairro();
                
                pieDataset.setValue(a, new Integer(1));
               // pieDataset.setValue(DESCRICAO DO CAMPO AGRUPADO, new Integer(CONTAGEM DO CAMPO AGRUPADO));
                
                
            }
            
            JFreeChart chart = ChartFactory.createPieChart("Gráfico de Pizza", // Title
                    pieDataset, // Dataset
                    true, // Show legend
                    true, // Use tooltips
                    false // Configure chart to generate URLs?
                    );
            try {                
                PiePlot P = (PiePlot) chart.getPlot();
                ChartFrame frame = new ChartFrame("Pie Chart", chart);
                frame.setVisible(true);
                frame.setSize(900, 600);
            } catch (Exception e) {
                System.out.println("Ocorreu um problema ao executar JFreeChart" + e);
            }
            
        } catch (Exception e) {
            System.out.println("lista papel: " + e);
            //return (null);
        }        
        
    }

Gostaria que alguem me ajudasse e se possível me mostre como colocar critérios de consulta para que eu possa utilizar este exemplo com outros dados e tabelas.

Criado 16 de setembro de 2012
Respostas 0
Participantes 1