在hibernate中检索统计数据

时间:2014-02-25 14:07:46

标签: java oracle hibernate statistics dao

我有一个表格文件,我使用字段创建了一个hibernate实体:

  

archiveDate:日期,
  createDate:日期,
  copyDdate:日期,
  modifiedDate:日期,
  fileSourceId:长,
  fileSize:长

我必须创建一个DAO来检索统计数据,例如在给定的时间间隔内(每天,每周,每月,每年)为指定的fileSourceId存档的文件数量。就像dao接收这样的参数一样:

  

fileSourceId = 1,startDay ='2012/01/01',endDate ='2012/02/01',interval ='weekly'

它应该返回一些像这样的对象:

  

{fileSourceId = 1,endDate =(第一周的结束日期),fileCount = 100,sizeSum = 10000}   {fileSourceId = 1,endDate =(第二周的结束日期),fileCount = 120,sizeSum = 30000}

等等。我想避免在java端进行计数和求和等计算,因为有几十万个文件。

是否可以在Hibernate中创建一个或多个条件来执行此操作,或者最好在数据库(Oracle)中执行某些视图并查询此视图。我想避免在查询中使用任何oracle特定函数,因为我们不希望绑定到一个数据库(特别是我们在集成testss中使用h2作为我们的测试数据库)。你会如何解决这个问题?

0 个答案:

没有答案