Obrigado por visitar a devmedia.com.br!

Precisamos de você para divulgar nossos vídeos e cursos gratuitos para a comunidade.

Se você gosta da devmedia.com.br por favor dê-nos o seu clique para o Google+ e ajude outros desenvolvedores ao redor do mundo.



Obrigado por seu apoio!
Equipe DevMedia

sair sem compartilhar (x)
DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:

Java Reporting com JasperReports e iReport Open Source - Parte IV

Não perca a última parte deste ótimo artigo sobre Java Reporting.

Java Reporting com JasperReports e iReport Open Source

JasperReports é uma solução open source poderosa e flexível para geração de relatórios. O visual designer iReport permite tirar total vantagem do poder do JasperReports sem necessidade de conhecimento profundo do formato XML nativo JasperReports. 

                                                                                                           John Ferguson Smart


Usando o JasperReports do Java

Então, agora temos um gerador de relatórios JasperReports funcional. Como usá-lo dentro de aplicações Java?

O objeto JasperDesign, no pacote net.sf.jasperreports.engine, é a representação Java de relatórios XML projetados usando o iReport. Carrega-se o XML report e compila-se para um

objeto JasperReport que realiza a geração do relatório: 

         JasperDesign jasperDesign 
             = JasperManager.loadXmlDesign("MyReport.xml");
         JasperReport jasperReport 
             = JasperManager.compileReport(jasperDesign);
 

Em uma aplicação real, não deveríamos fazer isto toda vez que geramos um relatório, pois a geração consome tempo e o relatório pode ser facilmente armazenado em cache.

Uma vez que tivermos um relatório compilado, podemos alimentá-lo com dados e usá-lo para gerar relatórios.

Ao gerarmos o relatório, podemos fornecer parâmetros de tempo de execução via Map. Isto é útil para fornecer informações desconhecidas em tempo de projeto, tal como um título de relatório personalizado pelo usuário. Dentro do relatório JasperReport, declaramos o parâmetro na janela “View/Report Parameters" e a seguir usamos a variável de parâmetro da mesma maneira que faríamos com os outros campos e variáveis previamente vistos: 

               // Parametros de relatório em tempo de execução
         Map parameters = new HashMap();
         parameters.put("title", "A user-customized title");
 

É claro que precisaremos também fornecer uma conexão JDBC válida para o banco de dados alvo: 

         // Recuperar a conexão com o banco de dados
         Connection conn = DBConnectionFactory.getConnection();

Finalmente, usamos a classe JasperFillManager para combinar o modelo de relatório compilado com os dados entrantes e gerar um relatório pronto para impressão: 

         JasperPrint jasperPrint 
                 = JasperFillManager.fillReport(jasperReport,  
                                                parameters, 
                                                conn);

  

Agora usamos o JasperPrintManager para gerar o relatório em qualquer formato desejado. O JasperReport suporta muitos formatos: PDF, Excel, XML, HTML, CVS, etc. Mas por enquanto, apenas escreveremos o relatório em um arquivo PDF: 

         JasperExportManager.exportReportToPdfFile(jasperPrint,
                                                   "report.pdf");

 

Existem muitos outras possibilidades. Veja as API JasperReports para maiores detalhes.

Outras Ferramentas Geradoras de Relatórios

Há disponíveis várias outras ferramentas geradoras de relatórios, portanto, em que pé o JasperReports/iReport se encontra em relação a elas? A seguir, alguns dos atores principais no campo:

O Eclipse BIRT é uma nova e promissora ferramenta para projeto e geração de relatórios, com um plugin Eclipse agradável. Embora relativamente nova, tem algumas funcionalidades poderosas de projeto e geração de relatórios. Por outro lado, é menos madura do que o JasperReports e parece também menos bem integrada com o Java, pois depende de scripting JavaScript interno para otimização dos relatórios. A integração de conexões com datasources que não sejam JDBC puros, parece ser também complicada. Não obstante, vale a pena dar uma olhada.

O Business Objects/Crystal Reports é uma solução BI/reporting comercial poderosa, com um desenhista gráfico experto. Uma licença Crystal Reports Server XI Edition (20 usuários) custa aproximadamente $7,500. O Crystal Reports IX Developer Edition, uma versão mais leve e mais orientada para desenvolvimento de aplicações Web, está disponível por aproximadamente $595 por desenvolvedor. A integração com o Java, parece porém, ser também limitada, mesmo na sua mais recente versão.

Um Duo Dinâmico

O JasperReports é uma ferramenta para geração de relatórios poderosa e flexível, fácil de integrar em um ambiente Java. O iReport elimina muito do trabalho difícil de projetar relatórios com o JasperReports — sem comprometer o seu poder. Juntos, formam um par impressionante. Experimente!

 

Para ler as outras partes dessa matéria, acesse:

I - http://www.devmedia.com.br/visualizacomponente.aspx?comp=1686&site=6
II - http://www.devmedia.com.br/visualizacomponente.aspx?comp=1709&site=6

III - http://www.devmedia.com.br/visualizacomponente.aspx?comp=1718&site=6





    1 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.



Eduardo Gomes
Eu li as outras partes do tutorial e gostei muito porém essa deixou a desejar, esperava que explicasse melhor a união do jasper report com o java, dando mais exemplos, no mais, legal


em 30/1/2008 16:08 - Responder

 



Autor
Eduardo Oliveira Spinola

Eduardo Oliveira Spínola (eduspinola@gmail.com - http://eduspinola.googlepages.com/home) é Bacharel em Ciência da Computação pela Universidade Salvador - UNIFACS, em 2005. Atualmente fazendo o Mestrado em Engenharia de Software pela Universidade Salvador - Unifacs. Tendo como experiência: desenvolvi...


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
3   1
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]
Este post está disponível para assinantes da Java Magazine ou para quem possui Créditos DevMedia.

  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 0,00 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ -1,00 (assinante) ou R$ -1,00 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ -1,00
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03