Java Hibernate:生成报告(存储过程)
我正在使用Hibernate(JPA2.0)、Spring3.0.5和Oracle11g开发一个应用程序 我需要根据数据库中的许多表生成一些报告(CSV) 示例报告CSV如下所示:Java Hibernate:生成报告(存储过程),java,oracle,hibernate,jpa,stored-procedures,Java,Oracle,Hibernate,Jpa,Stored Procedures,我正在使用Hibernate(JPA2.0)、Spring3.0.5和Oracle11g开发一个应用程序 我需要根据数据库中的许多表生成一些报告(CSV) 示例报告CSV如下所示: From_Date TO_Date Group Metric Mon Tue Wed Thu Fri 10/01/2012 10/02/2012 HP Average 29 74 400 99 1
From_Date TO_Date Group Metric Mon Tue Wed Thu Fri
10/01/2012 10/02/2012 HP Average 29 74 400 99 14
10/02/2012 10/03/2012 HP Average 81 19 22 108 07
10/03/2012 10/04/2012 HP Average 11 62 09 16 01
10/01/2012 10/02/2012 HP Total 924 452 915 100 940
10/02/2012 10/03/2012 HP Total 185 925 266 108 857
10/03/2012 10/04/2012 HP Total 173 201 907 675 169
我的问题是,由于此报告将取决于许多表和不同的指标(平均值、总数和百分比),那么使用给定的技术堆栈的最佳方法是什么
我目前没有使用任何报告api
存储过程是未来的发展方向吗
谢谢 对于报告,您可以使用(PDF)或(MS文档,例如MS Excel)
问候。您需要两项技术:
- 用来检索和计算数据的东西
- 创建可视化的东西
如果JDBC太慢,我只会考虑存储过程(更难编写、版本、与应用程序保持同步等)
可视化- CSV文件您可以在Java中轻松创建
- 有关正确的报告库/工具包,请参阅或
- 对于临时报告(没有预定义模式的报告,也称为数据分析),我建议重新编译
Pentaho BI server(或类似产品)如果您能够利用提供的整个工具链(ETL加载数据、报表设计器工具、数据分析器、报表调度器等),您将受益匪浅。如果您只有几个报告,而且这些报告在短期内不会更改,那么我会坚持使用Java解决方案。我知道API的相关信息。你能详细说明我为什么要使用这些吗?只要阅读博客文章-通过Hibernate,你可以使用结果转换器-transformer.ALIAS\u to\u BEAN轻松地将列表转换为POJO。对于某些报告,我们使用SQLQuery和映射到报告列的bean;实际上,我当时尝试的是调用entityManager.createQuery(java.lang.String qlString,java.lang.Class resultClass),将resultClass作为我的POJO,但这一个不起作用。如果有人使用HibernateAPI,最好知道有一个解决方案。